async def _eq_elevated_queue(self, context: Context, student: str, instructor: str): """ Manages the placing of a student into an instructor's elevated queue :param context: Object containing information about the caller :param student: The student that is being sent into another instructor's queue :param instructor: The instructor that the student is being sent to :return: None """ member_conv = MemberConverter() try: student_id, instructor_id = await gather( member_conv.convert(context, student), member_conv.convert(context, instructor)) self.instructor_queue[instructor_id].append(student_id) logger.debug( f"{context.author} has placed {student_id} into {instructor_id}'s queue" ) recipient = await userToMember(instructor_id, context.bot) await recipient.send( f"{instructor_id} placed {student_id} in your elevated queue") if student in self.bad_dq_counter: del self.bad_dq_counter[student] except BadArgument: logger.error(f"{context.author} gave the incorrect arguments" f" for the eq command: {student} and {instructor}") await context.author.send( "One of the users you entered is not a valid user")
async def rw_player(self, ctx, player=None): """Player profile. player can be a player tag or a Discord member. """ server = ctx.message.server author = ctx.message.author member = None tag = None if player is None: tag = self.settings.get(server.id, {}).get(author.id) else: try: cvt = MemberConverter(ctx, player) member = cvt.convert() except BadArgument: # cannot convert to member. Assume argument is a tag tag = clean_tag(player) else: tag = self.settings.get(server.id, {}).get(member.id) if tag is None: await self.bot.say("Can’t find tag associated with user.") return try: p = await self.api.fetch_player(tag) except RushWarsAPIError as e: await self.bot.say("RushWarsAPIError") else: await self.bot.say(embed=RWEmbed.player(p))