質問編集履歴

3

簡易的にした

2025/03/11 07:22

投稿

kaaaaachan
kaaaaachan

スコア8

test CHANGED
File without changes
test CHANGED
@@ -1,11 +1,10 @@
1
1
  ### 実現したいこと
2
2
  userがactivityを変更させると変更したことを認識させる仕組みを作りたい
3
- 認識したら jsonにあるrole一覧から名前とid取得できるので そのゲームを始めたらそのゲームのroleがあるかを確認しあったらつける(事前につけられたくない人を選別する(現在書いてる途中なのでその部分がない))
4
3
 
5
4
  ### 発生している問題・分からないこと
6
- activityを変更しても自動で認識してくれない voice_channelに入って無理や更新させれば認識はしてくれる
5
+ activityを変更しても自動で認識してくれない voice_channelに入っ
6
+ on_messageから user.activityなどをした場合の取得は問題ないのですが
7
7
  自動認識の所だけで悩んでるのでそこだけ解決したい
8
-
9
8
 
10
9
 
11
10
  ### 該当のソースコード
@@ -18,57 +17,7 @@
18
17
  @commands.Cog.listener()
19
18
  async def on_member_update(self, before, after):
20
19
 
21
- t = self.bot.get_channel(ids)
22
-
23
-
24
- file_name = "path"
25
-
26
- if after.guild and after.guild.id != Guild_id:
27
-
28
- return
29
-
30
- if after.activity.type == "playing":
31
-
32
- await t.send("4")
33
-
34
- game_name = after.activity.name
35
-
36
- with open(file_name, "r") as f:
37
- data = json.load(f)
20
+ #~~ここから下に処理~~#
38
-
39
- role_names = list(data["Roles"].keys())
40
-
41
- best_match = process.extractOne(game_name, role_names)
42
-
43
- await t.send(f"{best_match}, {after.activity.type}")
44
-
45
- else:
46
-
47
- game_name = after.activity.name
48
- file_name = "path"
49
-
50
- with open(file_name, "r") as f:
51
- data = json.load(f)
52
-
53
- role_names = list(data["Roles"].keys())
54
-
55
- best_match = process.extractOne(game_name, role_names)
56
-
57
-
58
- if best_match[1] > 80:
59
- role_name = best_match[0]
60
- role_id = data["Roles"][role_name]
61
- role = discord.utils.get(after.guild.roles, id=role_id)
62
- await t.send(f"{best_match}, {after.activity.type}")
63
-
64
- if role:#いずれrole付与させるつもり
65
- await t.send(f"{after.name}, {role_name}, {game_name}")
66
- else:
67
-
68
- t.send("a role that doesn't match")
69
- else:
70
- await t.send(f"{best_match}, {after.activity.type}")
71
- return
72
21
 
73
22
 
74
23
  async def setup(bot):
@@ -82,7 +31,7 @@
82
31
  - [x] その他
83
32
 
84
33
  ##### 上記の詳細・結果
34
+ instansは親でall
85
35
  調べてみてもそもそも activityの変化を検知してってのをしてる人が見つからず 自分なりにいじってみたのですができませんでした
86
36
 
87
37
  ### 補足
88
- instansは親でallになってます

2

☑をつけ忘れていた

2025/03/11 06:05

投稿

kaaaaachan
kaaaaachan

スコア8

test CHANGED
File without changes
test CHANGED
@@ -76,7 +76,7 @@
76
76
  ```
77
77
 
78
78
  ### 試したこと・調べたこと
79
- - [ ] teratailやGoogle等で検索した
79
+ - [x] teratailやGoogle等で検索した
80
80
  - [x] ソースコードを自分なりに変更した
81
81
  - [ ] 知人に聞いた
82
82
  - [x] その他

1

わからない点をわかりやすく書き直した

2025/03/11 01:44

投稿

kaaaaachan
kaaaaachan

スコア8

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  ### 発生している問題・分からないこと
6
6
  activityを変更しても自動で認識してくれない voice_channelに入って無理やり更新させれば認識はしてくれる
7
- そもそもが on_member_updateがactivityを自動認識してるをどこかのserverで見かたのなにかしら方法があるのだろうどやり方がわからな
7
+ 自動認識の所だけで悩んでるのでそこだけ解決した
8
8
 
9
9
 
10
10