message
This commit is contained in:
		
							parent
							
								
									10aebe67e7
								
							
						
					
					
						commit
						9bfa5a9b9c
					
				
							
								
								
									
										11
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							| @ -1,15 +1,12 @@ | ||||
| { | ||||
|     // 使用 IntelliSense 了解相关属性。  | ||||
|     // 悬停以查看现有属性的描述。 | ||||
|     // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 | ||||
|     "version": "0.2.0", | ||||
|     "configurations": [ | ||||
|         { | ||||
|             "type": "pwa-chrome", | ||||
|             "type": "node-terminal", | ||||
|             "name": "Run Script: start", | ||||
|             "request": "launch", | ||||
|             "name": "Launch Chrome against localhost", | ||||
|             "url": "http://localhost:8080", | ||||
|             "webRoot": "${workspaceFolder}" | ||||
|             "command": "yarn run start", | ||||
|             "cwd": "${workspaceFolder}" | ||||
|         } | ||||
|     ] | ||||
| } | ||||
| @ -14,11 +14,11 @@ ws.on('GUILD_MEMBERS', (data) => { | ||||
|     console.log('[GUILD_MEMBERS] 事件接收 :', data); | ||||
| }); | ||||
| ws.on('GUILD_MESSAGES', (data) => { | ||||
|     // console.log('[GUILD_MESSAGES] 事件接收 :', JSON.stringify(data));
 | ||||
|     console.log('[GUILD_MESSAGES] 事件接收 :', JSON.stringify(data)); | ||||
|     if(data.eventType == "MESSAGE_CREATE"){ | ||||
|         messageCreate(data.msg) | ||||
|         messageCreate(data) | ||||
|     }else if(data.eventType == "MESSAGE_DELETE"){ | ||||
|         messageDelete(data.msg) | ||||
|         messageDelete(data) | ||||
|     } | ||||
| }); | ||||
| ws.on('GUILD_MESSAGE_REACTIONS', (data) => { | ||||
|  | ||||
							
								
								
									
										6
									
								
								bin/channel-core/tools.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								bin/channel-core/tools.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| import { client } from "./base.js"; | ||||
| 
 | ||||
| export async function getRole(guildId){ | ||||
|     let { data } = await client.roleApi.roles(guildId); | ||||
|     return data | ||||
| } | ||||
							
								
								
									
										31
									
								
								bin/mysql/base.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								bin/mysql/base.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| import mysql from "mysql" | ||||
| import { mysqlConfig } from "../../config/index.js"; | ||||
| 
 | ||||
| 
 | ||||
| function connection(){ | ||||
|     return new Promise((res,rej)=>{ | ||||
|         const c = mysql.createConnection(mysqlConfig); | ||||
|         c.connect(function (err) { | ||||
|             if (err) { | ||||
|                 throw new Error("connect mysql error",err) | ||||
|             } | ||||
| 
 | ||||
|             res(c) | ||||
|         }); | ||||
|     }) | ||||
| } | ||||
| 
 | ||||
| export function query(sql){ | ||||
|     return new Promise(async (res)=>{ | ||||
|         const c = await connection() | ||||
|         c.query(sql,(err,data)=>{ | ||||
|             if(err){ | ||||
|                 throw new Error("select error") | ||||
|             }else { | ||||
|                 c.destroy() | ||||
|                 res(data) | ||||
|             } | ||||
|         }) | ||||
|     }) | ||||
|      | ||||
| } | ||||
							
								
								
									
										24
									
								
								bin/mysql/index.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								bin/mysql/index.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,24 @@ | ||||
| import { mysqlConfig } from "../../config/index.js" | ||||
| import { query } from "./base.js" | ||||
| 
 | ||||
| const dataname = mysqlConfig.database | ||||
| /** | ||||
|  * 判断数据表是否存在 | ||||
|  * @param {String} name 数据表名  | ||||
|  * @return {Boolend} true 存在 false 不存在 | ||||
|  */ | ||||
| 
 | ||||
| 
 | ||||
| export async function isTable(name){ | ||||
|     const list = await query("show tables") | ||||
|     for(const i in list){ | ||||
|         console.log(list[i]["Tables_in_" + dataname]) | ||||
|         if(name == list[i]["Tables_in_" + dataname]){ | ||||
|             return true | ||||
|         } | ||||
|     } | ||||
|     return false | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| console.log(await isTable("aaa")) | ||||
							
								
								
									
										7
									
								
								config/index.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								config/index.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| export const mysqlConfig = { | ||||
|     host: "localhost", | ||||
|     port: 3306, | ||||
|     database: "qqbot", | ||||
|     user: "root", | ||||
|     password: "root" | ||||
| } | ||||
| @ -4,7 +4,10 @@ | ||||
|   "main": "index.js", | ||||
|   "license": "MIT", | ||||
|   "dependencies": { | ||||
|     "dayjs": "^1.11.2", | ||||
|     "memory-cache": "^0.2.0", | ||||
|     "mitt": "^3.0.0", | ||||
|     "mysql": "^2.18.1", | ||||
|     "qq-guild-bot": "^2.9.4" | ||||
|   }, | ||||
|   "scripts": { | ||||
|  | ||||
| @ -1,10 +1,33 @@ | ||||
| import dayjs from "dayjs" | ||||
| import { getRole } from "../../bin/channel-core/tools.js" | ||||
| import { onMessageCreate } from "../../bin/message/index.js" | ||||
| 
 | ||||
| 
 | ||||
| function init(){ | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| async function updateActive(member,author,guildId){ | ||||
|     const jointime = dayjs(member.joined_at) | ||||
|     // console.log(time.format('YYYY-MM-DD HH:mm:ss'))
 | ||||
|     const nickname = member.nick | ||||
|     const roles = [] | ||||
|     const avatar = author.avatar | ||||
|     const id = author.id | ||||
|     const bot = author.bot | ||||
|     const username = author.username | ||||
|     const roleList = await getRole(guildId) | ||||
|     console.log(roleList) | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /** | ||||
|  * 收到消息处理函数 | ||||
|  * @param {Object} msg 消息对象 | ||||
|  */ | ||||
| function createMessage(msg){ | ||||
| function createMessage({msg}){ | ||||
|     console.log("收到消息",msg) | ||||
|     updateActive(msg.member,msg.author,msg.guild_id) | ||||
| } | ||||
| onMessageCreate(createMessage) | ||||
							
								
								
									
										80
									
								
								yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										80
									
								
								yarn.lock
									
									
									
									
									
								
							| @ -15,6 +15,11 @@ axios@>=0.21.1: | ||||
|     follow-redirects "^1.14.9" | ||||
|     form-data "^4.0.0" | ||||
| 
 | ||||
| bignumber.js@9.0.0: | ||||
|   version "9.0.0" | ||||
|   resolved "https://registry.npmmirror.com/bignumber.js/-/bignumber.js-9.0.0.tgz#805880f84a329b5eac6e7cb6f8274b6d82bdf075" | ||||
|   integrity sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A== | ||||
| 
 | ||||
| combined-stream@^1.0.8: | ||||
|   version "1.0.8" | ||||
|   resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" | ||||
| @ -22,6 +27,16 @@ combined-stream@^1.0.8: | ||||
|   dependencies: | ||||
|     delayed-stream "~1.0.0" | ||||
| 
 | ||||
| core-util-is@~1.0.0: | ||||
|   version "1.0.3" | ||||
|   resolved "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" | ||||
|   integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== | ||||
| 
 | ||||
| dayjs@^1.11.2: | ||||
|   version "1.11.2" | ||||
|   resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.2.tgz#fa0f5223ef0d6724b3d8327134890cfe3d72fbe5" | ||||
|   integrity sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw== | ||||
| 
 | ||||
| delayed-stream@~1.0.0: | ||||
|   version "1.0.0" | ||||
|   resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" | ||||
| @ -41,11 +56,26 @@ form-data@^4.0.0: | ||||
|     combined-stream "^1.0.8" | ||||
|     mime-types "^2.1.12" | ||||
| 
 | ||||
| inherits@~2.0.3: | ||||
|   version "2.0.4" | ||||
|   resolved "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" | ||||
|   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== | ||||
| 
 | ||||
| isarray@~1.0.0: | ||||
|   version "1.0.0" | ||||
|   resolved "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" | ||||
|   integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== | ||||
| 
 | ||||
| loglevel@^1.8.0: | ||||
|   version "1.8.0" | ||||
|   resolved "https://registry.npmmirror.com/loglevel/-/loglevel-1.8.0.tgz#e7ec73a57e1e7b419cb6c6ac06bf050b67356114" | ||||
|   integrity sha512-G6A/nJLRgWOuuwdNuA6koovfEV1YpqqAG4pRUlFaz3jj2QNZ8M4vBqnVA+HBTmU/AMNUtlOsMmSpF6NyOjztbA== | ||||
| 
 | ||||
| memory-cache@^0.2.0: | ||||
|   version "0.2.0" | ||||
|   resolved "https://registry.npmmirror.com/memory-cache/-/memory-cache-0.2.0.tgz#7890b01d52c00c8ebc9d533e1f8eb17e3034871a" | ||||
|   integrity sha512-OcjA+jzjOYzKmKS6IQVALHLVz+rNTMPoJvCztFaZxwG14wtAW7VRZjwTQu06vKCYOxh4jVnik7ya0SXTB0W+xA== | ||||
| 
 | ||||
| mime-db@1.52.0: | ||||
|   version "1.52.0" | ||||
|   resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" | ||||
| @ -63,6 +93,21 @@ mitt@^3.0.0: | ||||
|   resolved "https://registry.npmmirror.com/mitt/-/mitt-3.0.0.tgz#69ef9bd5c80ff6f57473e8d89326d01c414be0bd" | ||||
|   integrity sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ== | ||||
| 
 | ||||
| mysql@^2.18.1: | ||||
|   version "2.18.1" | ||||
|   resolved "https://registry.npmmirror.com/mysql/-/mysql-2.18.1.tgz#2254143855c5a8c73825e4522baf2ea021766717" | ||||
|   integrity sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig== | ||||
|   dependencies: | ||||
|     bignumber.js "9.0.0" | ||||
|     readable-stream "2.3.7" | ||||
|     safe-buffer "5.1.2" | ||||
|     sqlstring "2.3.1" | ||||
| 
 | ||||
| process-nextick-args@~2.0.0: | ||||
|   version "2.0.1" | ||||
|   resolved "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" | ||||
|   integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== | ||||
| 
 | ||||
| qq-guild-bot@^2.9.4: | ||||
|   version "2.9.4" | ||||
|   resolved "https://registry.npmmirror.com/qq-guild-bot/-/qq-guild-bot-2.9.4.tgz#5c697746fa9402a3c4537dd983571444ba497b1d" | ||||
| @ -72,6 +117,19 @@ qq-guild-bot@^2.9.4: | ||||
|     resty-client "0.0.5" | ||||
|     ws "^7.4.4" | ||||
| 
 | ||||
| readable-stream@2.3.7: | ||||
|   version "2.3.7" | ||||
|   resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" | ||||
|   integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== | ||||
|   dependencies: | ||||
|     core-util-is "~1.0.0" | ||||
|     inherits "~2.0.3" | ||||
|     isarray "~1.0.0" | ||||
|     process-nextick-args "~2.0.0" | ||||
|     safe-buffer "~5.1.1" | ||||
|     string_decoder "~1.1.1" | ||||
|     util-deprecate "~1.0.1" | ||||
| 
 | ||||
| resty-client@0.0.5: | ||||
|   version "0.0.5" | ||||
|   resolved "https://registry.npmmirror.com/resty-client/-/resty-client-0.0.5.tgz#f98e143fd824e5844d46c47e11c81567e58fac07" | ||||
| @ -79,6 +137,28 @@ resty-client@0.0.5: | ||||
|   dependencies: | ||||
|     axios ">=0.21.1" | ||||
| 
 | ||||
| safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: | ||||
|   version "5.1.2" | ||||
|   resolved "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" | ||||
|   integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== | ||||
| 
 | ||||
| sqlstring@2.3.1: | ||||
|   version "2.3.1" | ||||
|   resolved "https://registry.npmmirror.com/sqlstring/-/sqlstring-2.3.1.tgz#475393ff9e91479aea62dcaf0ca3d14983a7fb40" | ||||
|   integrity sha512-ooAzh/7dxIG5+uDik1z/Rd1vli0+38izZhGzSa34FwR7IbelPWCCKSNIl8jlL/F7ERvy8CB2jNeM1E9i9mXMAQ== | ||||
| 
 | ||||
| string_decoder@~1.1.1: | ||||
|   version "1.1.1" | ||||
|   resolved "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" | ||||
|   integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== | ||||
|   dependencies: | ||||
|     safe-buffer "~5.1.0" | ||||
| 
 | ||||
| util-deprecate@~1.0.1: | ||||
|   version "1.0.2" | ||||
|   resolved "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" | ||||
|   integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== | ||||
| 
 | ||||
| ws@^7.4.4: | ||||
|   version "7.5.8" | ||||
|   resolved "https://registry.npmmirror.com/ws/-/ws-7.5.8.tgz#ac2729881ab9e7cbaf8787fe3469a48c5c7f636a" | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user