feature NekoLive - platform im making from ground up
nekolive going be build 2 types, and going be open source one of types.
start of open source going have few basic websocket and few more.
for non open source, going have alerts, emojis, and few stuff not going be open source.
but find info at https://nekolive.co.uk
I forward info / document tomorrow for websocket endpoints callout and path. just little late here do document.
main thing axelchat connect our non open source version that currently live at there and don't have logo and etc yet.
Okay, you can send all non-public information here [email protected]
Okay, you can send all non-public information here [email protected]
not private info since no one cant run bots on it because that secured
Endpoint: wss://ws.nekolive.co.uk/channel/CHANNELNAMEHERE
You have to call out `{"type":"login","username":"nekoanoy"}` after connects to connect channel as anonymously
that will respond to `{"type":"system_message","message":"Welcome to the chat, Anonymous-46128!","username":"NekoAI","roles":{"bot":true,"staff":true}}`
it will pull out this after fully connected `{"type":"user_list","users":["Anonymous-46128"],"roles":[]}`
as list users connected and updates when they leave or join
and need to keep pining server with `{"type":"ping"}` and the response be pong back
Message received is `{"type":"chat_message","message":"hello","username":"nekosunevr","channel":"nekosuneai","roles":{"guest":false,"streamer":false,"dev":false,"admin":true,"subscriber":false,"staff":false,"moderator":false,"bot":false}}`
with user roles who it is
follower alert is `{"type":"alert_follower","message":"nekosunevr Has followed your channel"}` with `{"type":"chat_message","message":"nekosunevr Has followed your channel","username":"NekoAI","roles":{"bot":true,"staff":true}}` as message too
subscriber that is still WIP: `{"type":"alert_subscriber","message":"nekosunevr Has Subscribe to your Channel Tier 1"}`
with message `{"type":"chat_message","message":"nekosunevr Has Subscribe to your Channel Tier 1","username":"NekoAI","roles":{"bot":true,"staff":true}}`
and for raid message `{"username":"NekoAI","type":"raid_trigger","from":"nekosunevr","viewers":0,"message":"nekosunevr has Raided you with 0 Viewers!"}`
with `{"username":"NekoAI","type":"system_message","message":"nekosunevr has Raided you with 0 Viewers!","roles":{"bot":true,"staff":true}}` message
emojis are pulled from `{"type":"chat_message","message":"<img src=\"https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_dc904508ff794cca84cdcf9e0ffa9172/animated/light/3.0\" alt=\"nekoheart\" class=\"chat-emote\" width=\"20\" height=\"20\" />","username":"nekosunevr","channel":"nekosuneai","roles":{"guest":false,"streamer":false,"dev":false,"admin":true,"subscriber":false,"staff":false,"moderator":false,"bot":false}}`
but i am going keep as that and pull emojis into this for overlay `{"type":"chat_emojis","url":"https://static-cdn.jtvnw.net/emoticons/v2/emotesv2_dc904508ff794cca84cdcf9e0ffa9172/animated/light/3.0", "channel": "nekosuneai"}`
but emojis still in WIP sector
there be more to come soon i need keep you posted
and for people who abuse the system, they can't. because they can't post websocket less been actual whitelisted domain that is 100% custom list
so only they are able post getting a bot token for bot use
but that's WIP too and only they can read the channel that's it but can't post.
but there are a few features not fully out but the basic stuff is so far.
i am work round making a ChatLib for this that I used made for vimm back then just rebuild fork of old lib
can test it over at https://nekolive.co.uk/channel/nekosuneai
and for API endpoint https://nekolive.co.uk/api/channels/stream/nekosuneai all need and detects if they streaming on twitch or directly from "platform":"NekoLive" or "platform":"Twitch" and etc that going add Trovo soon and hopely Kick if Kick allowing my Whitelisted IP
any update son this, been wile asked going add.
Hi! Sorry I haven't done this yet as I'm still working on urgent tasks. But I still remember that it needs to be done
its okay, just wondering if did forgot or not. got plenty time and working on docs soon. so can understand how works later on. just been busy reworking my AI atm for platform aka self custom module llm gpt atm
Hi!
I added NekoLive to the 0.38.5-beta update. You can download it and try it: https://github.com/3dproger/AxelChat/releases/tag/0.38.5-beta
However, for some reason sometimes even after successfully connecting and receiving message {"type":"system_message","message":"Welcome to the chat, Anonymous-46128!","username":"NekoAI","roles":{"bot":true,"staff":true}}, the rest of the messages do not arrive. Sometimes messages also do not arrive on the NekoLive website, so I can suspect that something is wrong with the backend.
P.S. Since I couldn't find any logo on the NekoLive website, I took your avatar for NekoLive icon in AxelChat. If you want me to replace the logo, you can send it to me
yeh i did mention there is no logo for it yet because haven't got one for it still since no one wasn't able make one and chat should be working just they cant post in there only get less from site directly can post
system_message = system message like host message and what looking for I think is chat_message let me check rq
so what need look for messages with chat_message that's when user messages type at
for alerts covered as
donations = where donations message happens but since set to chat_message aswell because of sending chat, I be changing that soon to chat_donations
for follower its follow
for sub subscribe
others like raid
raid_start, raid_countdown, raid_redirect, raid_trigger
and mod stuff mod_notification
and standard system is system_message where main host messages at
all endpoints type in websockets
Hi! I think I figured it out. The problem was that when connecting to WebSocket NekoLive, you need to pass the exact channel name (username) including the case. And AxelChat by default in such cases leads to lower case. But now I have fixed it. Although for other users it may be problematic since they can specify the channel name with a mistake in the case. To solve this problem at least to some extent, I added the following note:
These types of messages can now be read by AxelChat:
system_message
chat_message
raid_start
raid_countdown
raid_redirect
raid_trigger
alert_follower
alert_subscriber
follow
subscribe
chat_donations
chat_donation
mod_notification
But I couldn't check all of them but AxelChat will try to read and display them. If some messages are displayed in AxelChat not as you would like then please send examples of how these messages are displayed on your NekoLive site and in what form they come to WebSocket.
So, the current update with working NekoLive can be downloaded here: https://github.com/3dproger/AxelChat/releases/tag/0.38.8-beta
By the way, I didn't find a way to determine the user's avatar. But I found that by request https://nekolive.co.uk/api/channels/stream/AxelChatDev you can determine the background image in the bg field:
{
"live": false,
"viewers": 0,
"title": "Some title",
"game": "Grand Theft Auto V",
"image": "https://images.igdb.com/igdb/image/upload/t_cover_big/co66qs.webp",
"bg": "https://nekolive.co.uk/uploads/AxelChatDev/bg.png?v1742942076683",
"uptimeString": "offline",
"uptimeNum": "offline",
"followerCount": 0
}
If you manage to add a link to your avatar here I will make it so that it is displayed in AxelChat
i havent worked on avatar endpoint on it but i add that next update, just been busy fixing twitch api after conflict token issues.
but i will test beta see works for you
partly wont see message, is there way i can debug it help u on this? because connects but cant read channel and here it is there very wierd
{"type":"chat_message","message":"aaaa","username":"nekosunevr","channel":"KuroKarin","roles":{"guest":false,"streamer":false,"dev":false,"admin":true,"subscriber":false,"staff":false,"moderator":false,"bot":false}}
but it is connected for one but doesnt read chat
just added avatarUrl now was quick add in
just added avatarUrl now was quick add in
Great! I'll try adding this to the AxelChat
but it is connected for one but doesnt read chat
This is due to the fact that you need to specify the channel not as kurokarin, but as KuroKarin (pay attention to the case of the characters). Your service perceives channel names as case-sensitive and the same names but with different cases are defined as different channels. Plus, even if you specify a non-existent channel, your service will allow AxelChat to connect to it. With all this, AxelChat cannot determine whether it has connected to an existing channel or not. Unfortunately it is impossible to fix this on my side. It would be good to fix this on your side, since this can lead users to a dead end
i easy do that i have look chat node. I'm might set as all lowercase default on chat node and I put error in say no channel found and disconnect them
AxelChat begins to understand that it has successfully connected after it receives the first message of type system_message. This message comes even if AxelChat connects to a non-existent channel or with the wrong case in the name. That's the whole problem. A good solution would be to not allow establishing a WebSocket connection when trying to connect to a non-existent channel, or at least to have a system message inform that such a channel does not exist. It would also be good if there was no need to care about the case in the channel name
i easy do that i have look chat node. I'm might set as all lowercase default on chat node and I put error in say no channel found and disconnect them
Yes, that's what we need 😄
there ago fixed channel not defined
even if comes with Cap or lowercase it still detect but if added 111 at end now says channel not found
Done, added avatars and it is possible to enable and disable system messages: https://github.com/3dproger/AxelChat/releases/tag/0.38.9-beta
now i need do fix this up
emotes
hey @3dproger add endpoint for chat_emotes thats is a raw html emote in message for emote section so shows pure emotes but still chat normal too
after that all done far i see be a good testing phase
and need fix streamer cant see they own message some channels because when i connect to mine doesnt show my chat
so partly Cap name still doesnt work can you enforce cap name into lowercase when they enter cap name and can you change name into displayName since them are upper case names when username just general username please