[Script] Worker.mturk Overwatch Script

Discussion in 'mTurk Scripts & Resources' started by Ethraiel, Nov 21, 2016.

Tags:
  1. tomservo1425

    tomservo1425 Active Turker

    Messages:
    435
    Ratings:
    +394
    Snagged it.

    GET https://worker.mturk.com/?filters[search_term]=&page_size=50&filters[…Bmasters]=false&sort=updated_desc&filters[min_reward]=&page_number=1 net::ERR_NETWORK_CHANGED

    Over and over, plus it doesn't seem able to be stopped by stopping the script with the button. even if i turn off the 'run' button it continues to go through it's start/stop cycle in console.

    Accidentally closed that window, but for next time is there a clean way I can copy the object that it wants me to send to you?

    E: On reconnect the console started overflowing with page request errors, but a reload of the overwatch page fixed that.
     
    • Today I Learned Today I Learned x 2
  2. Ethraiel

    Ethraiel Well-Known Turker

    Messages:
    660
    Gender:
    Male
    Ratings:
    +1,480
    mmkay google fu is saying it's vpn, or cookie or dns related....but that still doesn't explain why it caused the script to freak out... had to have returned status 0 to get the message to pop up which means i'll have to find a enw way to dect logged out status :p but that's ok.

    For now...
    Code:
    [plain]
    .fail(function(data) { //test****************************************************
                    if(data.status === 0){
            console.log("If you think the script has stopped in error, copy the object below and contact Ethraiel...pastebin is a good place to host it", data);
            document.title = ("LOGGED OUT");
            $("#ConsoleStart").click();
            snd.play();
            $("#b2").prepend('<b>Overwatch has been halted, please check your loggin status on both sites.</b><p> You may have to open a new worker.mturk page and then refresh.</p>');
    
            }
            else if(data.status == 200){
                    console.log("There was an issue with the JSON object...Copy the object below and contact Ethraiel (if you feel the need, i think i got this)...pastebin is a good place to host it",data);
            }
            else {console.log("What did you do?! Just kidding, but you should paste the object below to pastebin or something and send it to Ethraiel... Thanks :)", data);}
        });
    [/plain]
    ^^is what handles the failed requests (you can ctrl+f that whole thing and find it in the code)... you can delete that whole block in the script to completely get rid of any response the script might try to take... That would of course mean that the logged out message and everything else would go away but if you didn't care about them then that's your best option.
    Copying the object can be annoying but i really only need the status code.. (though with the whole status === 0 thing getting fooled it may be pointless but i'm gonna try) so dont worry about the whole object... find where it says status and give me the number you see there.
     
    • Like Like x 2
  3. soggybottom

    soggybottom New Turker Birthday Turker!

    Messages:
    8
    Ratings:
    +13
    Thanks for making this @Ethraiel I'm trying to set this up but I'm getting the error message "Overwatch has been halted, please check your loggin status on both sites.
    You may have to open a new worker.mturk page and then refresh."

    Both in Chrome and FF. I've signed-out and logged back into both but still it says I'm logged out after trying to search something.

    Also, shut off all other scripts except for Overwatch but still the problem persists.

    Any idea?
     
  4. Jagdpanzer

    Jagdpanzer Survey Slinger

    Messages:
    2,960
    Gender:
    Male
    Ratings:
    +3,443

    OW searches on the worker site which is not being utilized by amazon right now. You must log into both sites:

    https://www.mturk.com you use this now

    https://worker.mturk.com New site.
     
    • Today I Learned Today I Learned x 1
  5. soggybottom

    soggybottom New Turker Birthday Turker!

    Messages:
    8
    Ratings:
    +13

    Thanks, didn't realize it was pulling from the new worker site.
     
    • Like Like x 1
  6. Ethraiel

    Ethraiel Well-Known Turker

    Messages:
    660
    Gender:
    Male
    Ratings:
    +1,480
    Overwatch Update to 1.01.00
    https://greasyfork.org/en/scripts/24464-overwatch-for-worker-mturk

    [​IMG]
    Some minor changes, some bigger ones...you'll lose access to your log so if there's data there you're trying to save you'll need to be running an older version to see it... :\ think that's the only downside here though, i made the script a wee bit better under the hood and added some needed interface stuff. Remove works a bunch different but other than that there were no major user changes for you to be made directly aware of :) if you're too curious for that to satiate you, the change log was pretty thorough. As always hit me up with bug reports suggestions or even code :) it's all welcome.
     
    • Like Like x 4
    • Today I Learned Today I Learned x 1
  7. WimpLo

    WimpLo Survey Slingin' Batch Masta Former MTG MotM

    Messages:
    34,815
    Gender:
    Female
    Ratings:
    +73,314
    It's even more user friendly! I like the new desktop notifications checkbox :) Thanks!
     
    • Love Love x 1
  8. Ethraiel

    Ethraiel Well-Known Turker

    Messages:
    660
    Gender:
    Male
    Ratings:
    +1,480
    The thought "wimplo will like this" definitely crossed my mind when i added it :D
     
    • Like Like x 1
    • Love Love x 1
  9. Randomacts

    Randomacts Survey Slinger

    Messages:
    94,622
    Gender:
    Male
    Ratings:
    +124,073
    So weird.. but hopefully easy request.. Would it be possible for the volume to go over 100%? I know audio distortions happen after that like with how VLC does it but right now I am working with the fact that when I send the alerts through soundwire to my phone they are getting covered up by plex if I have music playing.

    Yes I am aware that there are many places besides you that can fix this issue in my workflow and I actually emailed soundwire's dev but I figured I would see if it would be easy for you to fix it from your side. (I use the TTS alerts if that matters)

    If you can't figure anything out it is fine.. really the place I should be fixing this is at soundwire's level I just figured I would ask.

    :behindsofa: I may or may not be having the TTS wake me up from naps.

    :goodnight:

    (And yes.. I have the volume in the settings at 100%)
     
    • Love Love x 1
  10. Nacho Ferret

    Nacho Ferret Active Turker

    Messages:
    305
    Ratings:
    +338
    In the Overwatch Tutorial III you mentioned that you can delete lines 224-229 if you only have RID and GID watchers but it looks like the code changed and I was wondering if that's possible in the updated version. Thanks! :)
     
  11. Ethraiel

    Ethraiel Well-Known Turker

    Messages:
    660
    Gender:
    Male
    Ratings:
    +1,480
    :) You've now given me a reason to brag a bit.
    With the update if you dont have any search strings the script knows this and skips that step :D

    edit... (iterations through, or lookups in the watchlist per each page request. Assuming the script default of 50 HITs per page)
    with 37 RID or GID based watchers and 3 search strings

    v1.00.04 and below
    1*(50) + 1*(50) + (40*50)*2 = 4100

    one lookup on the HITs RID (for each HIT)
    one lookup on the HITs GID (for each HIT)
    Then for each watcher (total 40) we try to find a partial match with the HIT title and requester name (so *2 because title & name)

    v1.01.00
    1*(50) + 1*(50) + (3*50)*2 = 400

    we have 3 *50 there at the end because the script keeps track of your string based watchers now, so it know's you have 3 and searches accordingly :)

    but i guess you could delete it if you wanted too
    line 274-282 but don't get rid of that closing bracket on 274 ;)

    Code:
     else { //if we dont have a match in our idDB for the current HIT in our for loop we loop through our watchlist Search Database (watcherDB.serDB) looking for partial title and requester names
                    for (var x in watcherDB.serDB) {
                        if (hitObject.Requester.toLowerCase().indexOf(x.toLowerCase()) > -1 || hitObject.Title.toLowerCase().indexOf(x.toLowerCase()) > -1) {
                            hitObject.color = "searchBased";
                            hitObject.userName = watcherDB.serDB[x].userName;
                            hitObject.userSearch = x;
                        }
                    }
                }
    
    ^should be able to control+f that whole thing...also should really give a shout out to @rdaneel for really revealing just how quickly that 40*50 bit can rise...
     
    • Like Like x 2
    • Love Love x 1
    Last edited: Dec 12, 2016
  12. Nacho Ferret

    Nacho Ferret Active Turker

    Messages:
    305
    Ratings:
    +338
    Wow! Thank you for replying in such detail. I spent an hour or so formatting all my string watchers into IDs an then I noticed the script change so I figured I'd ask. I think I'll file this under "Things I'll understand one day."

    Also, thank you and all who helped with this project, it has a professional feel and I'm really enjoying it. :)
     
    • Love Love x 1
  13. Randomacts

    Randomacts Survey Slinger

    Messages:
    94,622
    Gender:
    Male
    Ratings:
    +124,073
    So I finally let chrome update itself and now I'm getting the annoying woman TTS voice that is lower quality then what we used to have..

    Apparently it has something to do with the fact that your script doesn't actually 'pick' a TTS voice and just uses a default.... and chrome went full retard behind the scenes and changed that to a lower quality voice.

    I did hear something about a line in the code that we can edit to pick a voice but I not only can't remember what line that was but also I don't want to keep the script from updating ect.
     
  14. ricyan14

    ricyan14 New Turker

    Messages:
    7
    Gender:
    Male
    Ratings:
    +2
    A couple questions or thoughts:

    1. Is there a way for me to only watch HITS from requesters that I am qualified for in OW?
    2. Can I remove HITS from the watch section once I have done them? Put another away, how I can not see HITS on the watch section that I may have done already, so that I can focus on the HITS that I need/want to do and be rid of the "noise"?
     
  15. turk_it

    turk_it Survey Slinger

    Messages:
    3,728
    Gender:
    Male
    Ratings:
    +10,147
    Dumb Question: How can you make the display panes as long as the window?
     
  16. Ana*

    Ana* H&R Blockhead

    Messages:
    21,637
    Gender:
    Female
    Ratings:
    +27,162
    Will are dropping folks
     
  17. slothbear

    slothbear Survey Slinger

    Messages:
    10,821
    Gender:
    Male
    Ratings:
    +22,069
    Here's my post about setting the voice back to the old one...or experimenting with some new ones:
    https://turkerhub.com/threads/12-15-trans-sentient-thursday.64/page-31#post-17366

    The change won't keep the script from updating...and the update may revert to the female voice, unless @Ethraiel wants to set it to the male voice...
     
    • Today I Learned Today I Learned x 2
  18. Randomacts

    Randomacts Survey Slinger

    Messages:
    94,622
    Gender:
    Male
    Ratings:
    +124,073
    • Like Like x 1
  19. Ethraiel

    Ethraiel Well-Known Turker

    Messages:
    660
    Gender:
    Male
    Ratings:
    +1,480
    Hmmm i go away for a few days and google decides to make problems for me... not exactly sure what happened, seems you guys have done a lot more research than i have at this point, but i used default because the voices were different for each browser. @slothbear i couldn't see that post so not sure i what i put down here will be a repeat or not.

    to change the voice on TTS find

    Code:
    su[(su.length - 1)] = new SpeechSynthesisUtterance();
    
    right after that line you can add a voice...(British dude in chrome)
    Code:
    su[(su.length - 1)].voice = window.speechSynthesis.getVoices()[4];
    
    that's all that should have to be done.

    https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesisUtterance/voice
     
    • Like Like x 1
  20. ceedj

    ceedj Survey Slinger

    Messages:
    2,767
    Gender:
    Male
    Ratings:
    +6,020
    Just installed after having issues with HM not catching everything, nice work!

    Couple of questions (I skimmed the thread, so if I missed it, sorry):

    1) How come some of my watchers are a darker shade of yellow?

    ii) Is there anyway to clear the list of HITs on the right side once I've seen it?

    Thank you, great job!

    EDIT: Figured out 1) , darker ones are search terms, duh. I like that it differentiates. :)
     
    Last edited: Dec 19, 2016