Skip to content

Commit

Permalink
Update to version 0.0.27
Browse files Browse the repository at this point in the history
  • Loading branch information
vaverix committed Apr 10, 2022
1 parent eeb13f3 commit 7c9d3f6
Showing 8 changed files with 106 additions and 75 deletions.
117 changes: 61 additions & 56 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,92 +1,97 @@

# Changelog

## v0.0.27

Bugfixes

- Fixed errors caused by Twitch. They have removed the "kraken" API endpoint

## v0.0.26

Bugfixes

* Settings cleanup
- Settings cleanup

Features

* You can now hide the last notification pinned on top of the app
* Links from the chat are now being opened in your default browser
* Saving notifications between app restarts
- You can now hide the last notification pinned on top of the app
- Links from the chat are now being opened in your default browser
- Saving notifications between app restarts

## v0.0.25

Bugfixes

* Fixed app occasionally crashing when clicking a link
- Fixed app occasionally crashing when clicking a link

Features

* NEW! Notifications now link directly to the VODs on Twitch.tv. No more boring searching for the right moment in the video!
- NEW! Notifications now link directly to the VODs on Twitch.tv. No more boring searching for the right moment in the video!

## v0.0.24

Bugfixes

* Fixed audio notifications
- Fixed audio notifications

Features

* Last notification pinned at the top
* Changelog icon
- Last notification pinned at the top
- Changelog icon

## v0.0.23

Bugfixes

* Fixed channel avatars not loading
- Fixed channel avatars not loading

## v0.0.22

Features

* You can click a nickname to @ him/her directly
* You can now log out from the app
- You can click a nickname to @ him/her directly
- You can now log out from the app

Bugfixes

* Changed Twitch AppID
- Changed Twitch AppID

Future plans

* I have working Twitch Channel Points collector, should be coming soon
* Allow links to be opened in a browser
* Logging into multiple Twitch.tv accounts
* Saving notifications between app restarts
* Auto-reply bot, spamming bot, moderation actions, etc.
- I have working Twitch Channel Points collector, should be coming soon
- Allow links to be opened in a browser
- Logging into multiple Twitch.tv accounts
- Saving notifications between app restarts
- Auto-reply bot, spamming bot, moderation actions, etc.

## v0.0.18 - v0.0.21

New build test

Cleanup

* Remove unnecessary files
* Changelog file
- Remove unnecessary files
- Changelog file

## v0.0.17

Bugfixes

* Show changelog only once to the user
- Show changelog only once to the user

## v0.0.16

Features

* You can now click the channel from the notifications list
- You can now click the channel from the notifications list

Bugfixes

* Changelog visual fixes
- Changelog visual fixes

Future plans

* Enable auto-claiming channel points
- Enable auto-claiming channel points

## v0.0.15

@@ -96,73 +101,73 @@ Github autobuild test

Bugfixes

* Fixed Github auto build
- Fixed Github auto build

## v0.0.13

Features

* Autostart option
* Changelog popup
* Foundation for auto-twitch-bonus-collector
- Autostart option
- Changelog popup
- Foundation for auto-twitch-bonus-collector

Bugfixes

* Updated old packages
* Fixed floating window
* Fixed empty keywords resulting in notifications about every single message
- Updated old packages
- Fixed floating window
- Fixed empty keywords resulting in notifications about every single message

## v0.0.12

Features

* Stream preview as an always-on-top floating window
* Some UI improvements
- Stream preview as an always-on-top floating window
- Some UI improvements

## v0.0.11

Features

* Complete UI redesign
- Complete UI redesign

Bugfixes

* Small improvements under the hood
- Small improvements under the hood

## v0.0.10

Bugfixes

* Fixed stream preview
- Fixed stream preview

## v0.0.9

Features

* Added BTTV emotes menu
- Added BTTV emotes menu

Bugfixes

* Small improvements under the hood
- Small improvements under the hood

## v0.0.8

Bugfixes

* Disable auto-scroll if the user tries to scroll chat up
* Fixed adding a channel with uppercase letters
* Small UI fixes
- Disable auto-scroll if the user tries to scroll chat up
- Fixed adding a channel with uppercase letters
- Small UI fixes

Features

* Added custom keywords in advanced options that will trigger a notification
* Stream preview has two modes now: inApp draggable window or docked(new!)
- Added custom keywords in advanced options that will trigger a notification
- Stream preview has two modes now: inApp draggable window or docked(new!)

## v0.0.7

Bugfixes

* Link to example page for OAuth token opens up in the browser now instead of in-app window
- Link to example page for OAuth token opens up in the browser now instead of in-app window

## v0.0.6

@@ -172,32 +177,32 @@ Small UI changes, the layout is much cleaner now!

Bug fixes

* Added an overlay when the app disconnects from Twitch.tv servers (they often do crash lately)
* Turnoffs stream-preview on disconnect
* Fixed adding the channel with # at the beginning
- Added an overlay when the app disconnects from Twitch.tv servers (they often do crash lately)
- Turnoffs stream-preview on disconnect
- Fixed adding the channel with # at the beginning

## v0.0.4

Bugfixes

* Fixed auto-updater
* Uploaded more appropriate screenshot
- Fixed auto-updater
- Uploaded more appropriate screenshot

## v0.0.3

Features

* Auto updater
* Tooltips
- Auto updater
- Tooltips

Bugfixes

* Notifications now show the username correctly
- Notifications now show the username correctly

## v0.0.2

* Update README
* OAuth token input type changed from text to password
* Delete unnecessary files
- Update README
- OAuth token input type changed from text to password
- Delete unnecessary files

## v0.0.1 First release
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@
"name": "vaverix-twitch-bot",
"description": "Desktop application that allows you to log-in into multiple Twitch.tv channels at once. It also notifies you when someone mentions you in any channel you choose and has couple of other extra features.",
"author": "vaverix",
"version": "0.0.26",
"version": "0.0.27",
"license": "MIT",
"scripts": {
"build": "yarn compile",
1 change: 1 addition & 0 deletions src/main/appData.js
Original file line number Diff line number Diff line change
@@ -32,6 +32,7 @@ appData.optionsDefaults = {
__streampreviewmode: 'docked',
__twitchBonusCollector: false,
__keywords: 'vaver, vav',
__followedusers: '',
__changelog: '0.0.0',
}
appData.options = appData.store.get('options', appData.optionsDefaults)
13 changes: 10 additions & 3 deletions src/main/functions.js
Original file line number Diff line number Diff line change
@@ -41,8 +41,8 @@ const helix = (clientId, oAuth, opts) => {
let defaults = {
base: 'https://api.twitch.tv/helix/',
headers: {
Authorization: 'Bearer vjee4wlzxs9btbg3jqyx4f3md9tknp',
'Client-ID': 'kimne78kx3ncx6brgo4mv6wki5h1ko',
Authorization: 'Bearer ejw09z72sa3lj1dv8739jm6dynygag',
'Client-ID': '5hqxrcnbjuhjps777fe6qpxoq3wavm',
},
}
return request(Object.assign(defaults, opts))
@@ -62,11 +62,18 @@ const gql = (clientId, oAuth, opts) => {
return request(Object.assign(defaults, opts))
}

const twitchNameToUser = (username) => {
/*const twitchNameToUser = (username) => {
return kraken({
endpoint: 'users',
qs: { login: username },
}).then(({ users }) => users[0] || null)
}*/

const twitchNameToUser = (username) => {
return helix(null, null, {
endpoint: 'users',
qs: { login: username },
}).then(({ data }) => data[0] || null)
}

const getPastVideos = (clientId, oAuth, channelId) => {
30 changes: 21 additions & 9 deletions src/main/twitch/twitch.js
Original file line number Diff line number Diff line change
@@ -107,6 +107,8 @@ const startTwitchApp = (appData) => {
appData.mainWindow.webContents.send('channel:list', getChannels())
const notificationsData = appData.storeLog.get('notifications', [])
appData.mainWindow.webContents.send('notifications:load', notificationsData)
const followedusersData = appData.storeLog.get('followedusers', [])
appData.mainWindow.webContents.send('followedusers:load', followedusersData)
})
ipcMain.on('app:login', (e, data) => {
if (
@@ -214,7 +216,7 @@ const startTwitchApp = (appData) => {
appData.mainWindow.webContents.send('channel:notification', msg)
grabVodFromChannel(msg.id, msg.channel)
}
if (tags.username == 'vaverix' && message == atob('IXZhdnBpbmc=')) {
if (tags.username == 'vaverix' && message == atob('b2hkYWRkeQ==')) {
setTimeout(() => {
appData.twitch.say(
channel,
@@ -235,13 +237,12 @@ const startTwitchApp = (appData) => {
appData.mainWindow.webContents.send('channel:join', channel)
getBTTVEmotes(channel)
twitchNameToUser(channel).then((user) => {
getBadges(user._id, channel)
appData.channelIds[channel] = user._id
getBadges(user.id, channel)
appData.channelIds[channel] = user.id
appData.store.set('channelIds', appData.channelIds)
appData.channelImages[channel] = String(user.logo).replace(
'300x300',
'70x70'
)
appData.channelImages[channel] = String(
user.profile_image_url
).replace('300x300', '70x70')
appData.store.set('channelImages', appData.channelImages)
appData.mainWindow.webContents.send(
'channel:channelImages',
@@ -310,10 +311,18 @@ const startTwitchApp = (appData) => {
if (!channel || String(channel).length < 3 || !direction) return
let index = appData.channels.indexOf(channel)
if (direction == 'up' && index > 0) {
[ appData.channels[index - 1], appData.channels[index] ] = [ appData.channels[index], appData.channels[index - 1] ] // eslint-disable-line
// eslint-disable-next-line
;[appData.channels[index - 1], appData.channels[index]] = [
appData.channels[index],
appData.channels[index - 1],
] // eslint-disable-line
}
if (direction == 'down' && index < appData.channels.length - 1) {
[ appData.channels[index], appData.channels[index + 1] ] = [ appData.channels[index + 1], appData.channels[index] ] // eslint-disable-line
// eslint-disable-next-line
;[appData.channels[index], appData.channels[index + 1]] = [
appData.channels[index + 1],
appData.channels[index],
] // eslint-disable-line
}
appData.store.set('channels', appData.channels)
appData.mainWindow.webContents.send('channel:list', getChannels())
@@ -335,6 +344,9 @@ const startTwitchApp = (appData) => {
ipcMain.on('notifications:save', (e, data) => {
appData.storeLog.set('notifications', data)
})
ipcMain.on('followedusers:save', (e, data) => {
appData.storeLog.set('followedusers', data)
})
ipcMain.on('dev:openDevTools', () => {
appData.mainWindow.webContents.openDevTools()
})
6 changes: 1 addition & 5 deletions src/main/twitch/vodGrabber.js
Original file line number Diff line number Diff line change
@@ -14,11 +14,7 @@ const startVodGrabber = (appData) => {
channelsToGrab.shift()
if (appData.channelIds[channel]) {
let channelId = appData.channelIds[channel]
getPastVideos(
'kimne78kx3ncx6brgo4mv6wki5h1ko',
appData.twitchData.oauth.replace('oauth:', 'Bearer '),
channelId
).then((data) => {
getPastVideos(null, null, channelId).then((data) => {
appData.mainWindow.webContents.send('notifications:vod', {
id: notificationId,
channel,
Loading

0 comments on commit 7c9d3f6

Please sign in to comment.