@@ -138,8 +138,10 @@ async def _on_response(self, msg):
138138 if int (data ["type" ]) not in [1 , 2 ]:
139139 return
140140
141- guild = cache_data (data ["guild_id" ], AdditionalType .GUILD , data , self ._discord ._connection )
142- user = discord .Member (data = data ["member" ], guild = guild , state = self ._discord ._connection )
141+ guild = None
142+ if data .get ("guild_id" ) is not None :
143+ guild = cache_data (data ["guild_id" ], AdditionalType .GUILD , data , self ._discord ._connection )
144+ user = discord .Member (data = data ["member" ], guild = guild , state = self ._discord ._connection ) if data .get ("member" ) is not None else discord .User (state = self ._discord ._connection , data = data ["user" ])
143145 channel = await handle_thing (data ["channel_id" ], OptionType .CHANNEL , data , self .parse_method , self ._discord )
144146
145147 interaction = Interaction (self ._discord ._connection , data , user )
@@ -856,8 +858,10 @@ async def _on_response(self, msg):
856858 if data ["type" ] != 3 :
857859 return
858860
859- guild = cache_data (data ["guild_id" ], AdditionalType .GUILD , data , self ._discord ._connection )
860- user = discord .Member (data = data ["member" ], guild = guild , state = self ._discord ._connection )
861+ guild = None
862+ if data .get ("guild_id" ) is not None :
863+ guild = cache_data (data ["guild_id" ], AdditionalType .GUILD , data , self ._discord ._connection )
864+ user = discord .Member (data = data ["member" ], guild = guild , state = self ._discord ._connection ) if data .get ("member" ) is not None else discord .User (state = self ._discord ._connection , data = data ["user" ])
861865 msg = await getResponseMessage (self ._discord ._connection , data = data , user = user , response = True )
862866
863867 interaction = Interaction (self ._discord ._connection , data , user , msg )
0 commit comments