rothiotome / godot-very-simple-twitch Goto Github PK
View Code? Open in Web Editor NEWVery Simple Twitch Chat integration for Godot
License: MIT License
Very Simple Twitch Chat integration for Godot
License: MIT License
The add_message feature was added to the addon days ago and I think it's a good idea add that fuctionality to the chat dock to be tested and used for everyone
The feature is not implemented in the chat dock
The front can be a line_edit with a button with the new functionality attached to send the message.
Maybe it's a cool idea hide the line edit and the button until its needed to keep the chat/dock clean :)
Will be usefull some retries when the comunicaction with twtich
There is no retry behavior
The idea is: if there is a nonclitical error, the addon will be retry X times waiting Y seconds between retries
In order to be VST a "production ready" addon we need tests
There is no test framework neither testing suite
Gut seems to be a good testing famework ( https://gut.readthedocs.io/en/latest/ ) The idea is to add the framework as first step with a dummy test. The next step will be a series of small refactors to extract methods and test them
It's seems also we can attach it to PRs in order to keep the project robust and merge only the "safe" ones
VST return no errors so far in some flows like joining a chat or raising the local server to the app
If you tries to connect to a empty chat or the IRC server returns an error the app/game doesn't get notify properly
Wa can use the same data object as described in #9 with the same structure for return the errors. The way to return the errors can be a new signal called on_plugin_error (TBD) and notify error through that.
We can change also the name of the other signals to match the godot code style taking advantage of these and being good (girl|boy)scauts o7
I think a github action ziping the addon folder and uploading to github relases is a good feature for these reasons:
My proposal its to make a github action to make a zip with the addon folder only on "v*.." tags so in each tag a version will be realeases with that versioning
There is no files about the author ( rothio ), coc and contributing stuff and I think is important as a free software. Also that makes super profesional look :)
For template files i think will be nice to get the same as vsc unity edition to keep the docs nice, with all the information and clean like: #1. We can add or remove parts and stuff.
Adding the files:
Which can be copied from another rothio's repo after a check.
Maybe this must be some separated issues but I decided to group them. And for some reason I cant put labels on this so read this like a discussion
The github action needs credentials in order to push releases and do some stuff
Release version github action fails
Go to your profile
Generate a new token with write/read repo scopes
Put it as a secret (GITHUB_ACTION name?) in this repo
Relaunch the action
Will be usefull get a disconect function for scenes/moments where you don't need waste resources in a node receiving messages. Maybe a disconect function in vsc is a good feature.
Now we can disconect removing the node and adding a new one. Its too shabby and only works on anon login
In a non auth flow we must send the close the websocket properly. Must be careful becuase on a auth flow you must free all the resources not only the websocket. The thing is, after login a channeld and logout we can lauch another login to the same channel or another one without problems. I don't see any LEAVE command or something like that but...
In order to get more information about the failure flow at the api calls we need to return an error object with the information parsed to app
The api client returns nulls with no information about the error itself.
Since Godot is not static typed we can use it to return an response ( like an 'ok' for timeouts) or an object error (VSTError?) with the following params:
In the other hand if we took this aproach every response from the api must be casted to response or the error class. I think that add a lot of overhead so we can:
0.0.1
No response
Upon installing the addon to my project, I immediately started getting errors because my game already uses a class called ChatMessage
. While this particular class is defined by the example/
code, which is no problem to just delete, I do notice that there is also a Chatter
class in the VST addon code, which seems general enough that it could trigger similar issues for other projects.
Therefore I suggest prefixing all of VST's global classes with VST
(eg. VSTChatMessage
) or something even more specific. That way it's far less likely that there will be any clash in class names with any given project, or any other addons (eg. connectors for other chat services)!
ChatMessage
class (in my case it's internal to an autoload)I install VST and my game stops working
I install VST and it has no effect on the running my game
No response
To keep the same style in all files at project and to make it easier for everyone follow the gdscript style, maybe its a good idea to use a linter such as gdLint
There is no linter in project
Adding the addon and make a simple how to/install doc file in docs
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.