[Feature Request] Implement Channel Point Rewards Queue Approval / Rejection
Describe the solution you'd like So right now Firebot only implements the EventSub event for when someone redeems a channel point reward.
However, the issue with that is that it will trigger effects even when the redemption hasn't been approved yet.
Checking the code it seems to use the onChannelRedemptionAdd hook of Twurple here:
https://github.com/crowbartools/Firebot/blob/e79218410e2034470dfff12123f981e08c282f0d/src/backend/twitch-api/eventsub/eventsub-client.ts#L67
Twurple also offers one called onChannelRedemptionUpdate which will update the reward's status to either fulfilled or cancelled:
https://github.com/twurple/twurple/blob/56b7d3cfa0d1f51e3f4c270803352401f233b7a6/packages/eventsub-base/src/EventSubBase.ts#L687
https://dev.twitch.tv/docs/eventsub/eventsub-subscription-types/#channelchannel_points_custom_reward_redemptionupdate
Moving over to this hook would be easy seeing as Firebot isn't using any of the methods of the old hook event (getReward or updateStatus method)
Additional context I am not sure if both would be needed to support rewards that skip Twitch's reward queue.
Additionally, to not break existing workflows, one idea might be to implement it as a restriction to confirm fulfillment:
Alternatively, if restrictions can't be limited to just the channel point rewards, maybe adding an extra checkbox to wait for fulfillment would be an idea?
Ultimately though I feel it should be changed alltogether though, since it does seem like it's not implemented to Twitch's spec to me.
(If a reward is skipping the queue, it should trigger an effect immediately. If it is however waiting to be approved, then it should not trigger until it was approved.)
Dennis just came up with another idea
To add 2 more effect boxes to the Channel Point Reward effect.
Basically one box for Effects To Run On Approval and one for Effects To Run On Rejection or something like that
Maybe also hide the boxes when the Skip Reward Requests Queue checkbox is enabled