Esempio n. 1
0
    async def check(real_roomid, raffle_name):
        if not await Utils.is_normal_room(real_roomid):
            return
        data = await BasicRequest.tv_req_check(real_roomid)
        checklen = data["data"]["list"]
        list_available_raffleid = []
        try:
            for j in checklen:
                raffle_id = j["raffleId"]
                raffle_type = j["type"]
                time_wanted = j["time_wait"] + int(time.time())

                if not Statistics.is_raffleid_duplicate(raffle_id):
                    Log.raffle("本次获取到 %s 的抽奖id为: %s" %
                               (raffle_name, raffle_id))
                    list_available_raffleid.append(
                        (raffle_id, raffle_type, time_wanted))
                    Statistics.add2raffle_ids(raffle_id)
        except:
            Log.error("检测到无效的小电视类抽奖")
        # 暂时没啥用
        # num_aviable = len(list_available_raffleid)
        for raffle_id, raffle_type, time_wanted in list_available_raffleid:
            Timer.add2list_jobs(
                TvRaffleHandler.join, time_wanted,
                (real_roomid, raffle_id, raffle_type, raffle_name))
Esempio n. 2
0
 async def join(real_roomid, name, raffle_id, expireAt):
     if not await Utils.is_normal_room(real_roomid):
         return
     if not Utils.is_normal_anchor(name):
         Log.error("检测到 %s 的异常天选时刻" % real_roomid)
         return
     data = await BasicRequest.anchor_req_join(raffle_id)
     if not data["code"]:
         Log.raffle("参与了 %s 的 天选时刻" % real_roomid)
         Statistics.add2joined_raffles("天选时刻(合计)")
         Timer.add2list_jobs(AnchorRaffleHandler.check, expireAt + 3, [real_roomid])
     else:
         Log.error("%s 天选时刻错误: %s" % (real_roomid, data["message"]))
Esempio n. 3
0
 async def check(room_id, raffle_id=None):
     if not await Utils.is_normal_room(room_id):
         return
     if raffle_id is not None:
         data = {"data": {"id": raffle_id}}
     else:
         data = await BasicRequest.storm_req_check(room_id)
     list_available_raffleid = []
     data = data["data"]
     if data:
         raffle_id = data["id"]
         if not Statistics.is_raffleid_duplicate(raffle_id):
             Log.info("本次获取到 二十倍节奏风暴 的抽奖id为 %s")
             list_available_raffleid.append(raffle_id)
             Statistics.add2raffle_ids(raffle_id)
         for raffle_id, time_wanted in list_available_raffleid:
             Timer.add2list_jobs(StormRaffleHandler.join, time_wanted,
                                 (room_id, raffle_id))
    async def check(room_id, raffle_id=None):
        if not await Utils.is_normal_room(room_id):
            return
        if raffle_id is not None:
            data = {"data": {"id": raffle_id}}
        else:
            data = await BasicRequest.storm_req_check(room_id)
        list_available_raffleid = []
        data = data["data"]
        num = int(data["num"])

        if data:
            raffle_id = data["id"]
            if not Statistics.is_raffleid_duplicate(raffle_id):
                raffle_name = "二十倍节奏风暴" if num == 20 else "节奏风暴"
                Log.raffle("本次获取到 %s 的抽奖id为 %s" % (raffle_name, raffle_id))
                list_available_raffleid.append((raffle_id, 0))
                Statistics.add2raffle_ids(raffle_id)
            for raffle_id, time_wanted in list_available_raffleid:
                Timer.add2list_jobs(StormRaffleHandler.join, time_wanted,
                                    (room_id, raffle_id))