Compare commits
	
		
			2 Commits
		
	
	
		
			45cd7a1270
			...
			f89a5a5aa6
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					f89a5a5aa6 | ||
| 
						 | 
					0f54d11162 | 
							
								
								
									
										7
									
								
								config/config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								config/config.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					    "TeleTokConf": {
 | 
				
			||||||
 | 
					        "ptInstance": "PROXITOK INSTANCE URL",
 | 
				
			||||||
 | 
					        "matrixAddress": "SYNAPSE SERVER URL",
 | 
				
			||||||
 | 
					        "accessToken": "INSERT TOKEN HERE"
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										36
									
								
								index.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								index.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
				
			|||||||
 | 
					import { 
 | 
				
			||||||
 | 
					    MatrixClient,
 | 
				
			||||||
 | 
					    SimpleFsStorageProvider,
 | 
				
			||||||
 | 
					    AutojoinRoomsMixin,
 | 
				
			||||||
 | 
					    RustSdkCryptoStorageProvider
 | 
				
			||||||
 | 
					} from "matrix-bot-sdk";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//import config data
 | 
				
			||||||
 | 
					const config = require("./config/config.json");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const homeserverUrl = config.TeleTokConf.matrixAddress;
 | 
				
			||||||
 | 
					const accessToken = config.TeleTokConf.accessToken;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const storage = new SimpleFsStorageProvider("./config/bot.json");
 | 
				
			||||||
 | 
					const cryptoProvider = new RustSdkCryptoStorageProvider("./config/crypto");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const client = new MatrixClient(homeserverUrl, accessToken, storage, cryptoProvider);
 | 
				
			||||||
 | 
					AutojoinRoomsMixin.setupOnClient(client);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.on("room.message", handleCommand);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.start().then(() => console.log("Now listening for TikTok URLs..."));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					async function handleCommand(roomId: string, event: any) {
 | 
				
			||||||
 | 
					    // Don't handle unhelpful events (ones that aren't text messages, are redacted, or sent by us)
 | 
				
			||||||
 | 
					    if (event['content']?.['msgtype'] !== 'm.text') return;
 | 
				
			||||||
 | 
					    if (event['sender'] === await client.getUserId()) return;
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    // Check to ensure that the `!hello` command is being run
 | 
				
			||||||
 | 
					    const body = event['content']['body'];
 | 
				
			||||||
 | 
					    if (!body?.startsWith("!hello")) return;
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    // Now that we've passed all the checks, we can actually act upon the command
 | 
				
			||||||
 | 
					    await client.replyNotice(roomId, event, "Hello world!");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user