I haven't done anything with twitch chat before, but I have used json and parsing a fair amount.
So basically, json is just an encoded string with all the information you need arranged in a specific way (I've mostly only used it for arrays so this is what I'm basing that off of).
Most (all?) objects in construct 2 can be turned into text via Object.asJson (Try creating a text field and setting the text to the .asJson for one of your objects to see what it looks like). This can later be loaded via a "set from Json" to effectively recreate the object. (I do this a fair amount to duplicate arrays over multiple players to make sure they all have the same leaderboard/player information etc.)
But as this works like a charm getting objects from Construct to Construct, will it work for getting a string from twitch to construct? I don't know, you might have to parse the Json to get the useful information that you need.
So onto parsing a string. For this you need to use the tokenat() function. Json, as I mentioned before, is just a string arranged in a specific way that can be parsed to get the information.
For example, in the platformer example, the Json for the background is:
{"c2":true, "w":{"x":0,"y":0,"w":1280,"h":1024,"l"5904914194331451,"zi":0,"hX":0,"hY":0}}
As you can tell, it breaks the information up with commas, so if you wanted the width, tokenat(ThisJsonString, 3, ",") would give you:
"w":1280
And you could further parse that with tokenat(NewString, 1, ":") to get simply a string that is 1280. Now you've got the width.
You could even put those in the same line: tokenat(tokenat(ThisJsonString, 3, ","), 1, ":") to get 1280 if you wish.