Ejemplo n.º 1
0
def setup_platform(
    hass: HomeAssistant,
    config: ConfigType,
    add_entities: AddEntitiesCallback,
    discovery_info: DiscoveryInfoType | None = None,
) -> None:
    """Set up the Xbox platform."""
    api = Client(api_key=config[CONF_API_KEY])
    entities = []

    # request profile info to check api connection
    response = api.api_get("profile")
    if not response.ok:
        _LOGGER.error(
            "Can't setup X API connection. Check your account or "
            "api key on xapi.us. Code: %s Description: %s ",
            response.status_code,
            response.reason,
        )
        return

    users = config[CONF_XUID]

    interval = timedelta(minutes=1 * len(users))
    interval = config.get(CONF_SCAN_INTERVAL, interval)

    for xuid in users:
        if (gamercard := get_user_gamercard(api, xuid)) is None:
            continue
        entities.append(XboxSensor(api, xuid, gamercard, interval))
Ejemplo n.º 2
0
def setup_platform(opp, config, add_entities, discovery_info=None):
    """Set up the Xbox platform."""
    api = Client(api_key=config[CONF_API_KEY])
    entities = []

    # request profile info to check api connection
    response = api.api_get("profile")
    if not response.ok:
        _LOGGER.error(
            "Can't setup X API connection. Check your account or "
            "api key on xapi.us. Code: %s Description: %s ",
            response.status_code,
            response.reason,
        )
        return

    users = config[CONF_XUID]

    interval = timedelta(minutes=1 * len(users))
    interval = config.get(CONF_SCAN_INTERVAL, interval)

    for xuid in users:
        gamercard = get_user_gamercard(api, xuid)
        if gamercard is None:
            continue
        entities.append(XboxSensor(api, xuid, gamercard, interval))

    if entities:
        add_entities(entities, True)
Ejemplo n.º 3
0
class Clips(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.xclient = Client(api_key= os.getenv("XBOX_KEY"))
        self.gamer = self.xclient.gamer('NOOBboss162')

    def getClips(self):
        clips = self.gamer.get('game-clips')
        uris = []
        for clip in clips:
            # clipId = clip['gameClipId']
            uri = clip['gameClipUris'][0]['uri']
            uris.append( uri )
        return uris
    
    @commands.command(brief = "NOObBOSS")
    async def clip(self,ctx, index):
        clips = self.getClips()
        index = int(index)
        if clips[index]:
            await ctx.send(clips[index])
Ejemplo n.º 4
0
 def __init__(self, bot):
     self.bot = bot
     self.xclient = Client(api_key= os.getenv("XBOX_KEY"))
     self.gamer = self.xclient.gamer('NOOBboss162')