mirror of
				https://gitlab.com/gpvkt/twitchtts.git
				synced 2025-10-31 09:07:34 +01:00 
			
		
		
		
	Added config commands
This commit is contained in:
		
							parent
							
								
									3fe6c81943
								
							
						
					
					
						commit
						bff9a42a86
					
				
					 3 changed files with 73 additions and 4 deletions
				
			
		|  | @ -2,6 +2,14 @@ | ||||||
| 
 | 
 | ||||||
| All notable changes to this project will be documented in this file. If there is a `Changed` section please read carefully, as this often means that you will need to adapt your `config.yml`, otherwise the bot might fail to start. | All notable changes to this project will be documented in this file. If there is a `Changed` section please read carefully, as this often means that you will need to adapt your `config.yml`, otherwise the bot might fail to start. | ||||||
| 
 | 
 | ||||||
|  | ## [1.4.0] - 2022-08-23 | ||||||
|  | 
 | ||||||
|  | ### Added 1.4.0 | ||||||
|  | 
 | ||||||
|  | * `!usermap` command added | ||||||
|  | * `!delay` command added | ||||||
|  | * Darkmode added | ||||||
|  | 
 | ||||||
| ## [1.3.2] - 2022-08-19 | ## [1.3.2] - 2022-08-19 | ||||||
| 
 | 
 | ||||||
| ### Fixed 1.3.2 | ### Fixed 1.3.2 | ||||||
|  |  | ||||||
|  | @ -173,6 +173,8 @@ Additional commands (broadcaster and mods only) are: | ||||||
| * `!ton`: Turn TTS back on | * `!ton`: Turn TTS back on | ||||||
| * `!dtts <username>`: Disable TTS for the given user | * `!dtts <username>`: Disable TTS for the given user | ||||||
| * `!ptts <username>`: Allow TTS for the given user | * `!ptts <username>`: Allow TTS for the given user | ||||||
|  | * `!usermap <username> <spoken name>`: Add an entry to the usermapping in `config.yml` | ||||||
|  | * `!delay <int>`: Adjust the `clearmsg_timeout` in `config.yml` | ||||||
| 
 | 
 | ||||||
| ### Additional features | ### Additional features | ||||||
| 
 | 
 | ||||||
|  | @ -241,13 +243,13 @@ This project is licensed under the GPLv3 License - see [LICENSE](https://gitlab. | ||||||
| 
 | 
 | ||||||
| ### Libraries | ### Libraries | ||||||
| 
 | 
 | ||||||
| * [Python Software Foundation and contributors](https://www.python.org/) | * [Python](https://www.python.org/) | ||||||
|  | * [jQuery](https://jquery.org/) | ||||||
|  | * [Bootstrap](https://getbootstrap.com/) | ||||||
| * [PyYAML](https://pyyaml.org/) | * [PyYAML](https://pyyaml.org/) | ||||||
| * [requests](https://requests.readthedocs.io/en/latest/) | * [requests](https://requests.readthedocs.io/en/latest/) | ||||||
| * [fuzzywuzzy](https://github.com/seatgeek/fuzzywuzzy) | * [fuzzywuzzy](https://github.com/seatgeek/fuzzywuzzy) | ||||||
| * [pyinstaller](https://pyinstaller.org/) | * [pyinstaller](https://pyinstaller.org/) | ||||||
| * [OpenJS Foundation and jQuery contributors](https://jquery.org/) |  | ||||||
| * [Twitter Inc. and Bootstrap contributors](https://getbootstrap.com/) |  | ||||||
| 
 | 
 | ||||||
| ## Disclaimer | ## Disclaimer | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										61
									
								
								tts.py
									
										
									
									
									
								
							
							
						
						
									
										61
									
								
								tts.py
									
										
									
									
									
								
							|  | @ -236,6 +236,14 @@ class IRC: | ||||||
|                 logging.debug("!ptts command detected") |                 logging.debug("!ptts command detected") | ||||||
|                 self.Commands.ptts(self, msg) |                 self.Commands.ptts(self, msg) | ||||||
| 
 | 
 | ||||||
|  |             elif msg.startswith('!usermap'): | ||||||
|  |                 logging.info('!usermap command detected') | ||||||
|  |                 self.Commands.usermap(self, msg) | ||||||
|  | 
 | ||||||
|  |             elif msg.startswith('!delay'): | ||||||
|  |                 logging.info('!delay command detected') | ||||||
|  |                 self.Commands.delay(self, msg) | ||||||
|  | 
 | ||||||
|             elif msg.startswith('!toff'): |             elif msg.startswith('!toff'): | ||||||
|                 logging.info('TTS is now turned off') |                 logging.info('TTS is now turned off') | ||||||
|                 msg_queue.clear() |                 msg_queue.clear() | ||||||
|  | @ -593,6 +601,57 @@ class IRC: | ||||||
| 
 | 
 | ||||||
|             return True |             return True | ||||||
| 
 | 
 | ||||||
|  |         def delay(self, msg): | ||||||
|  |             """ !delay command | ||||||
|  | 
 | ||||||
|  |                 Adjust the delay setting in config.yml | ||||||
|  | 
 | ||||||
|  |                 :param str msg: The IRC message triggering the command | ||||||
|  |             """ | ||||||
|  | 
 | ||||||
|  |             try: | ||||||
|  |                 delay = msg.split(' ')[1] | ||||||
|  |             except: # pylint: disable=bare-except | ||||||
|  |                 delay = False | ||||||
|  | 
 | ||||||
|  |             if delay: | ||||||
|  |                 with open('config.yml','r', encoding='utf-8') as yamlfile: | ||||||
|  |                     cur_yaml = yaml.safe_load(yamlfile) | ||||||
|  |                     cur_yaml['irc']['clearmsg_timeout'] = int(delay) | ||||||
|  | 
 | ||||||
|  |                 if cur_yaml: | ||||||
|  |                     with open('config.yml','w', encoding='utf-8') as yamlfile: | ||||||
|  |                         yaml.safe_dump(cur_yaml, yamlfile) | ||||||
|  |                         load_config() | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |         def usermap(self, msg): | ||||||
|  |             """ !usermap command | ||||||
|  | 
 | ||||||
|  |                 Adds new entries to usermapping in config.yml | ||||||
|  | 
 | ||||||
|  |                 :param str msg: The IRC message triggering the command | ||||||
|  |             """ | ||||||
|  | 
 | ||||||
|  |             try: | ||||||
|  |                 msg = msg.replace('!usermap ', '') | ||||||
|  |                 splitmsg = msg.split(" ") | ||||||
|  |                 username, *mappingname = splitmsg | ||||||
|  |                 mappingname = ' '.join(mappingname) | ||||||
|  |             except: # pylint: disable=bare-except | ||||||
|  |                 username = False | ||||||
|  |                 mappingname = False | ||||||
|  | 
 | ||||||
|  |             if username and mappingname: | ||||||
|  |                 with open('config.yml','r', encoding='utf-8') as yamlfile: | ||||||
|  |                     cur_yaml = yaml.safe_load(yamlfile) | ||||||
|  |                     cur_yaml['usermapping'].update({username: mappingname}) | ||||||
|  | 
 | ||||||
|  |                 if cur_yaml: | ||||||
|  |                     with open('config.yml','w', encoding='utf-8') as yamlfile: | ||||||
|  |                         yaml.safe_dump(cur_yaml, yamlfile) | ||||||
|  |                         load_config() | ||||||
|  | 
 | ||||||
|         def quickvote(self, msg): |         def quickvote(self, msg): | ||||||
|             """ !quickvote command |             """ !quickvote command | ||||||
| 
 | 
 | ||||||
|  | @ -1108,7 +1167,7 @@ if __name__ == "__main__": | ||||||
|     if sys.argv[1:]: |     if sys.argv[1:]: | ||||||
|         if sys.argv[1] == "--version": |         if sys.argv[1] == "--version": | ||||||
|             print('Simple TTS Bot') |             print('Simple TTS Bot') | ||||||
|             print('Version 1.3.2') |             print('Version 1.4.0') | ||||||
|             sys.exit(1) |             sys.exit(1) | ||||||
| 
 | 
 | ||||||
|     main() |     main() | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue