Microsoft-Rewards-Script icon indicating copy to clipboard operation
Microsoft-Rewards-Script copied to clipboard

Failing to complete 3rd daily set

Open SapitoSucio opened this issue 1 year ago • 5 comments

I've noticed the bot fails to complete the last item of the daily set.

This is what it shows on console:

[7/8/2024, 5:03:39 a.m.] [PID: 9628] [LOG] [GO-HOME] Visited homepage successfully
[7/8/2024, 5:03:39 a.m.] [PID: 9628] [LOG] [DAILY-SET] Started solving "Daily Set" items
[7/8/2024, 5:03:46 a.m.] [PID: 9628] [LOG] [ACTIVITY] Found activity type: "UrlReward" title: "Homemade candles"
[7/8/2024, 5:03:46 a.m.] [PID: 9628] [LOG] [URL-REWARD] Trying to complete UrlReward
[7/8/2024, 5:03:46 a.m.] [PID: 9628] [LOG] [URL-REWARD] Completed the UrlReward successfully
[7/8/2024, 5:03:57 a.m.] [PID: 9628] [LOG] [ACTIVITY] Found activity type: "UrlReward" title: "UV safety tips"
[7/8/2024, 5:03:57 a.m.] [PID: 9628] [LOG] [URL-REWARD] Trying to complete UrlReward
[7/8/2024, 5:03:57 a.m.] [PID: 9628] [LOG] [URL-REWARD] Completed the UrlReward successfully
[7/8/2024, 5:04:32 a.m.] [PID: 9628] [ERROR] [ACTIVITY] An error occurred:TimeoutError: page.click: Timeout 30000ms exceeded.
Call log:
  - waiting for locator('[data-bi-id="Global_DailySet_20240807_Child2"]')

[7/8/2024, 5:04:33 a.m.] [PID: 9628] [LOG] [DAILY-SET] All "Daily Set" items have been completed

This is the current daily set:

image

SapitoSucio avatar Aug 07 '24 11:08 SapitoSucio

Seems like a new quiz? Can you show me how it looks, I don't have this in my region

TheNetsky avatar Aug 07 '24 11:08 TheNetsky

It is a quiz, although you can close the tab as soon as the page loads and the points are attributed.

Video

https://github.com/user-attachments/assets/e77ab277-c82c-41eb-ad40-259ba14596ec

This is the HTML Element:

<mee-card ng-if="$ctrl.dailySets[0].length > 2" display-type="single" ng-disabled="$ctrl.dailySets[0][2].disabled" class="ng-scope ng-isolate-scope c-card f-single"><!-- ngIf: $ctrl.hasHeader() --><div class="c-card-content" ng-transclude="content"><card-content class="ng-scope">
                <mee-rewards-daily-set-item-content item="$ctrl.dailySets[0][2]" cms-data="$ctrl.cmsData" class="ng-isolate-scope"><div class="text-align-center rewards-card-container min-dimension" mee-rewardable="" data-bi-id="Global_DailySet_20240807_Child2_quizexpt" data-m="{&quot;cN&quot;:&quot;¿Fan del boxeo?&quot;,&quot;id&quot;:&quot;global_dailyset_20240807_child2_quizexpt&quot;,&quot;sN&quot;:1,&quot;aN&quot;:&quot;Rewards.Dashboard.DailySets&quot;,&quot;cT&quot;:&quot;DailySet&quot;}" tabindex="0">
    <!-- ngIf: $ctrl.item.callToAction.text --><a class="ds-card-sec ng-scope" ng-if="$ctrl.item.callToAction.text" aria-disabled="" aria-label="¿Fan del boxeo?   ¡Embárcate en el mundo de Muhammad Ali y pon a prueba tu conocimiento con este cuestionario!   10&nbsp;puntos" target="true" role="link">

        <!-- ngIf: item.displayAnidHexaCode -->

        <mee-rewards-points complete="$ctrl.item.complete" points="$ctrl.item.points" locked="$ctrl.item.disabled" cms-data="$ctrl.cmsData" show-progress="$ctrl.item.isWot" point-progress="$ctrl.item.pointProgress" class="ng-isolate-scope"><div class="points clearfix">
    <!-- ngIf: !$ctrl.locked && !$ctrl.isExclusiveLockedItem --><div ng-if="!$ctrl.locked &amp;&amp; !$ctrl.isExclusiveLockedItem" class="ng-scope">
        <!-- ngIf: $ctrl.iconName && !$ctrl.isExclusiveLockedItem --><span class="mee-icon mee-icon-SkypeCircleCheck" ng-if="$ctrl.iconName &amp;&amp; !$ctrl.isExclusiveLockedItem" aria-label="más" role="note"></span><!-- end ngIf: $ctrl.iconName && !$ctrl.isExclusiveLockedItem -->
        <!-- ngIf: $ctrl.pointsString --><span mee-heading="heading" ng-if="$ctrl.pointsString" class="c-heading pointsString ng-binding ng-scope">10</span><!-- end ngIf: $ctrl.pointsString -->
    </div><!-- end ngIf: !$ctrl.locked && !$ctrl.isExclusiveLockedItem -->
    <!-- ngIf: !$ctrl.locked && $ctrl.isExclusiveLockedItem -->
    <!-- ngIf: $ctrl.locked -->
</div>
</mee-rewards-points>
        <div class="imageContainer" ng-class="{'x-hidden-vp1' : $ctrl.item.displayType === 'single' &amp;&amp; !$ctrl.areaConfig.isMobileViewModeEnabled}">
            <!-- ngIf: $ctrl.item.icon.source && !$ctrl.item.disabled --><mee-rewards-animation data="$ctrl.item.icon" ng-if="$ctrl.item.icon.source &amp;&amp; !$ctrl.item.disabled" class="ng-scope ng-isolate-scope"><picture class="rewards-animation-container">
    <!-- ngIf: !$ctrl.isAnimation -->
    <!-- ngIf: $ctrl.isAnimation --><div ng-if="$ctrl.isAnimation" class="rewardsBodymovin ng-scope"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 300 300" class="rewards-svg-renderer" preserveAspectRatio="xMidYMid meet" aria-hidden="true" focusable="false"><defs><clipPath id="__lottie_element_17"><rect width="300" height="300" x="0" y="0"></rect></clipPath></defs><g clip-path="url(#__lottie_element_17)"><g transform="matrix(2.600008487701416,0,0,2.600008487701416,25.19959259033203,25.200599670410156)" opacity="1" style="display: block;"><g opacity="1" transform="matrix(1,0,0,1,48,34.5)"><path fill="rgb(1,119,217)" fill-opacity="1" d=" M7,34.5 C6.934000015258789,32.505001068115234 7.105999946594238,30.507999420166016 7.514999866485596,28.554000854492188 C7.9670000076293945,26.843000411987305 8.62399959564209,25.191999435424805 9.470999717712402,23.639999389648438 C10.324000358581543,22.08099937438965 11.34000015258789,20.618000030517578 12.50100040435791,19.273000717163086 C13.699000358581543,17.884000778198242 14.989999771118164,16.576000213623047 16.365999221801758,15.361000061035156 C18.011999130249023,13.906999588012695 19.54400062561035,12.32800006866455 20.945999145507812,10.63700008392334 C22.295000076293945,9.01099967956543 23.46299934387207,7.24399995803833 24.43000030517578,5.364999771118164 C25.388999938964844,3.490999937057495 26.132999420166016,1.5140000581741333 26.648000717163086,-0.527999997138977 C27.18199920654297,-2.6659998893737793 27.445999145507812,-4.861000061035156 27.43600082397461,-7.064000129699707 C27.459999084472656,-10.730999946594238 26.72100067138672,-14.36299991607666 25.264999389648438,-17.729000091552734 C22.454999923706055,-24.291000366210938 17.226999282836914,-29.520000457763672 10.663999557495117,-32.32899856567383 C3.8499999046325684,-35.2239990234375 -3.8489999771118164,-35.2239990234375 -10.663999557495117,-32.32899856567383 C-17.226999282836914,-29.520000457763672 -22.454999923706055,-24.291000366210938 -25.263999938964844,-17.729000091552734 C-26.72100067138672,-14.36299991607666 -27.459999084472656,-10.730999946594238 -27.43600082397461,-7.064000129699707 C-27.43600082397461,-7.064000129699707 -13.741999626159668,-7.064000129699707 -13.741999626159668,-7.064000129699707 C-13.753999710083008,-8.909000396728516 -13.388999938964844,-10.734999656677246 -12.668000221252441,-12.432999610900879 C-11.281999588012695,-15.72700023651123 -8.661999702453613,-18.347000122070312 -5.368000030517578,-19.73200035095215 C-3.6710000038146973,-20.45400047302246 -1.843999981880188,-20.819000244140625 0,-20.805999755859375 C1.8300000429153442,-20.81599998474121 3.6429998874664307,-20.441999435424805 5.320000171661377,-19.708999633789062 C6.947999954223633,-19.0049991607666 8.428999900817871,-18.00200080871582 9.685999870300293,-16.75 C10.935999870300293,-15.496999740600586 11.932000160217285,-14.015000343322754 12.619999885559082,-12.385000228881836 C13.338000297546387,-10.704000473022461 13.704000473022461,-8.892999649047852 13.692999839782715,-7.064000129699707 C13.741000175476074,-4.767000198364258 13.163999557495117,-2.5 12.02299976348877,-0.5040000081062317 C10.843000411987305,1.4700000286102295 9.361000061035156,3.249000072479248 7.633999824523926,4.769000053405762 C5.4710001945495605,6.675000190734863 3.4609999656677246,8.75 1.621999979019165,10.970999717712402 C-0.1289999932050705,13.09000015258789 -1.656999945640564,15.383999824523926 -2.934999942779541,17.81800079345703 C-4.198999881744385,20.239999771118164 -5.176000118255615,22.80299949645996 -5.84499979019165,25.45199966430664 C-6.5879998207092285,28.410999298095703 -6.97599983215332,31.448999404907227 -7,34.5 C-7,34.5 7,34.5 7,34.5z"></path></g><g opacity="1" transform="matrix(1,0,0,1,48,87)"><path fill="rgb(1,119,217)" fill-opacity="1" d=" M0,-9 C4.9710001945495605,-9 9,-4.9710001945495605 9,0 C9,4.9710001945495605 4.9710001945495605,9 0,9 C-4.9710001945495605,9 -9,4.9710001945495605 -9,0 C-9,-4.9710001945495605 -4.9710001945495605,-9 0,-9z"></path></g></g></g></svg></div><!-- end ngIf: $ctrl.isAnimation -->
</picture>
</mee-rewards-animation><!-- end ngIf: $ctrl.item.icon.source && !$ctrl.item.disabled -->
            <!-- ngIf: $ctrl.item.icon.source && $ctrl.item.disabled -->
        </div>
        <div class="contentContainer">
            <h3 mee-heading="heading" ng-class="{'ellipsis': !$ctrl.isDenseDashboard()}" class="c-heading ng-binding ellipsis">¿Fan del boxeo?</h3>
            <p mee-paragraph="para4" ng-class="{'compact' : $ctrl.item.isWot &amp;&amp; ($ctrl.item.pointProgress > 0 || $ctrl.item.complete)}" class="ng-binding c-paragraph-4">¡Embárcate en el mundo de Muhammad Ali y pon a prueba tu conocimiento con este cuestionario!</p>
            <!-- ngIf: $ctrl.item.isWot && $ctrl.item.pointProgress > 0 && !$ctrl.item.complete -->
            <!-- ngIf: $ctrl.item.isWot && $ctrl.item.complete -->
            <!-- ngIf: $ctrl.areaConfig.isMobileViewModeEnabled --><div class="actionLink x-hidden-vp2 x-hidden-vp3 x-hidden-vp4 x-hidden-vp5 ng-scope" ng-if="$ctrl.areaConfig.isMobileViewModeEnabled">
                <span class="pointLink ng-binding">
                    10&nbsp;puntos &gt;
                </span>
            </div><!-- end ngIf: $ctrl.areaConfig.isMobileViewModeEnabled -->
            <!-- ngIf: $ctrl.isDenseDashboard() -->
        </div>
        <div class="actionLink x-hidden-vp1" ng-class="{'x-hidden-vp1' : $ctrl.areaConfig.isMobileViewModeEnabled}" ng-hide="$ctrl.isDenseDashboard()">
            <span class="pointLink ng-binding">
                10&nbsp;puntos &gt;
            </span>
        </div>
        <!-- ngIf: $ctrl.item.isGiveEligible -->
        <mee-rewards-debug-info item="$ctrl.item" class="ng-isolate-scope"><!-- ngIf: $ctrl.showDebugInfo -->
</mee-rewards-debug-info>
    </a><!-- end ngIf: $ctrl.item.callToAction.text -->
</div></mee-rewards-daily-set-item-content></card-content></div></mee-card>

SapitoSucio avatar Aug 07 '24 13:08 SapitoSucio

The 3rd daily set has this data-bi-id="Global_DailySet_20240812_Child2_quizexpt"

SapitoSucio avatar Aug 12 '24 08:08 SapitoSucio

I did the folllowing and now it's finding the last activity:

In Workers.ts

Change [data-bi-id="${activity.name}"] to [data-bi-id^="${activity.name}"]

and

[data-bi-id="${activity.offerId}"] into [data-bi-id^="${activity.offerId}"]

Now it's able to find the element even if has some extra string after Global_DailySet_XXXXXX_ChildX

SapitoSucio avatar Aug 17 '24 04:08 SapitoSucio

Good catch, I'll add that next update

TheNetsky avatar Aug 17 '24 13:08 TheNetsky

Already implemented

TheNetsky avatar Oct 25 '24 09:10 TheNetsky