質問するログイン新規登録

質問編集履歴

1

追加で試したの事の記載

2021/06/11 10:15

投稿

Konayukin
Konayukin

スコア3

title CHANGED
File without changes
body CHANGED
@@ -27,7 +27,17 @@
27
27
  [WARN : heartbeat @ 2021-06-11 02:44:04.876] Last heartbeat was not acked, so this is a zombie connection! Reconnecting
28
28
  [ERROR : heartbeat @ 2021-06-11 02:44:04.876] The websocket connection has closed: nil
29
29
  ```
30
+ ※追記 変更後のエラーメッセージ
31
+ ```
32
+ [INFO : websocket @ 2021-06-11 10:02:02.356] Discord using gateway protocol version: 6, requested: 6
30
33
 
34
+ [WARN : heartbeat @ 2021-06-11 10:03:24.500] Last heartbeat was not acked, so this is a zombie connection! Reconnecting
35
+ [ERROR : heartbeat @ 2021-06-11 10:03:24.500] The websocket connection has closed: nil
36
+
37
+ [WARN : vws-i @ 2021-06-11 10:03:25.786] VWS close: no address for japan9411.discord.media:443
38
+
39
+ [ERROR : vws-i @ 2021-06-11 10:04:43.416] VWS error: Disconnected.
40
+ ```
31
41
  ### docker-compose.yml
32
42
  AWSのシークレットキーとBotのトークンは伏せてあります。””で囲わなきゃいけない等初歩の知識不足の可能性もあるため先頭と後ろの文字だけ残しています。
33
43
  ```
@@ -63,4 +73,32 @@
63
73
  最終的に素人なりに目を凝らしてURIエラー?が出てるっぽい?からよくわからんけど「wss://japan286.discord.media:443:443」のWebSocketが繋がらないんか?と思って接続をテストしてみたんですが(多分)問題なく...
64
74
  Dockerからエラーを出してるファイルを片っ端から引っ張り出して中身を覗いては調べてをしてみたんですが特に収穫はなく...
65
75
 
66
- 調べてる最中に想像以上にいろんな言語でBOT作れることを知りましたがここまで来た以上なんとかしてこれだけは完成させたいという気持ちもありまして...どうぞよろしくお願いいたします。
76
+ 調べてる最中に想像以上にいろんな言語でBOT作れることを知りましたがここまで来た以上なんとかしてこれだけは完成させたいという気持ちもありまして...どうぞよろしくお願いいたします。
77
+
78
+ ※追記
79
+ 回答してくださった方の助言を元にGemfileを更新してコンベア内のRubyを2.7.0にアップデートしましたが当初と同じエラーが発生
80
+ WebSocketのURLの後ろの443が二つ付いてるのがダメなんじゃないかと素人なりに目星を付けて該当ファイル(/usr/local/lib/ruby/2.5.0/uri/rfc3986_parser.rb)内を下記のように書き換えてみましたが違ったエラーが発生
81
+ host = "wss://#{@endpoint}:443"
82
+
83
+ host = "wss://#{@endpoint}"
84
+ 長いので全文は割愛しちょこっとだけ周辺を記載↓
85
+ ```
86
+ def init_ws
87
+ host = "wss://#{@endpoint}"
88
+ @bot.debug("Connecting VWS to host: #{host}")
89
+
90
+ # Connect the WS
91
+ @client = Discordrb::WebSocket.new(
92
+ host,
93
+ method(:websocket_open),
94
+ method(:websocket_message),
95
+ proc { |e| Discordrb::LOGGER.error "VWS error: #{e}" },
96
+ proc { |e| Discordrb::LOGGER.warn "VWS close: #{e}" }
97
+ )
98
+
99
+ @bot.debug('VWS connected')
100
+
101
+ # Block any further execution
102
+ heartbeat_loop
103
+ end
104
+ ```