Open phobozad opened 7 years ago
Good catch. I can probably add something to it. Prolly won't be able to till thursday sadly.
So I figured out what needs to be added to speedcheck.py
this handles the first part
browser.is_text_present('I want to select my apartment')
this makes the addesses "Appear
browser.choose('selectAddressOption','2')
this was just a test
browser.is_text_present('APT') true
This selected the top option of the sub addresses browser.choose('subAddressList','0')
This clicks the button browser.find_by_xpath('//*[@id="content"]/div/div[3]/div/div[3]/p/a').first.click()
then the rest returns like normal. Like I said won't be able to do more till thursday or so.
Ill see if I have some time today to integrate the change.
I have added to code to handle MDU.
re-opening as the MDU code needs to be updated for the new webservice querying method
As a starting point, here an example HTTP response for an MDU location:
{
"wbfcResponse": {
"statusCode": 600,
"serviceErrors": [],
"inputErrors": {},
"doRedirect": false,
"redirectURL": null,
"statusName": "Success"
},
"CkavDataBean": {
"maskedServiceAddress1": null,
"networkType": null,
"segmentId": null,
"UnifiedAddressBean": {
"RestrictedAddressTeleNumber": null,
"lightspeedAvailFlag": false,
"OOFP": false,
"singleDispatchIndicator": false,
"QualifiedNetworkTransportType": null,
"isVoipExistsInUserAccount": false,
"dualTransportTypeFlag": false,
"navigationToken": null,
"wirelessAvailFlag": false,
"countyName": null,
"maxHsiaSpeedInOffer": null,
"isHsiaExistsInUserAccount": false,
"UserInput": {
"userInputAddressId": null,
"userInputAddressLine2": null,
"userInputZip": "53202",
"userInputAddressLine1": "444 E Corcoran Ave",
"userInputState": null,
"userInputCity": null
},
"isExistingDTVOnUverseBan": false,
"hsiaAvailFlag": false,
"iptvAvailFlag": false,
"uverseGreenAddressFlag": false,
"isExistingWirelessOnUverseBan": false,
"offerNotMatched": false,
"UserQualifiedHomeAddress": {
"zipCode": null,
"state": null,
"addressLine2": null,
"addressLine1": null,
"city": null
},
"CloseMatchAddress": null,
"isLightGigFlag": false,
"uverseMoveIn": false,
"unifiedEligibleHSIASpeed": null,
"voipAvailFlag": false,
"uverseRedAddressFlag": false,
"dtvMoveIn": false,
"isIptvExistsInUserAccount": false,
"convergedBillingIndicator": false,
"entryType": null,
"unifiedAvailableFlag": false,
"offerTvType": null,
"countyMap": null,
"isRestrictedDelearAddress": false,
"MDUAddress": {
"19": "444 E CORCORAN AV,APT 314,MILWAUKEE,WI53202",
"17": "444 E CORCORAN AV,APT 312,MILWAUKEE,WI53202",
"22": "444 E CORCORAN AV,APT 317,MILWAUKEE,WI53202",
"23": "444 E CORCORAN AV,APT 318,MILWAUKEE,WI53202",
"18": "444 E CORCORAN AV,APT 313,MILWAUKEE,WI53202",
"24": "444 E CORCORAN AV,APT 319,MILWAUKEE,WI53202",
"15": "444 E CORCORAN AV,APT 310,MILWAUKEE,WI53202",
"16": "444 E CORCORAN AV,APT 311,MILWAUKEE,WI53202",
"13": "444 E CORCORAN AV,APT 308,MILWAUKEE,WI53202",
"14": "444 E CORCORAN AV,APT 309,MILWAUKEE,WI53202",
"11": "444 E CORCORAN AV,APT 306,MILWAUKEE,WI53202",
"12": "444 E CORCORAN AV,APT 307,MILWAUKEE,WI53202",
"3": "444 E CORCORAN AV,BLDG FIRE,MILWAUKEE,WI53202",
"21": "444 E CORCORAN AV,APT 316,MILWAUKEE,WI53202",
"2": "444 E CORCORAN AV,BLDG FIR,MILWAUKEE,WI53202",
"20": "444 E CORCORAN AV,APT 315,MILWAUKEE,WI53202",
"1": "444 E CORCORAN AV,BLDG ELEVA,MILWAUKEE,WI53202",
"10": "444 E CORCORAN AV,APT 305,MILWAUKEE,WI53202",
"0": "444 E CORCORAN AV,BLDG ELEV,MILWAUKEE,WI53202",
"7": "444 E CORCORAN AV,APT 302,MILWAUKEE,WI53202",
"6": "444 E CORCORAN AV,APT 301,MILWAUKEE,WI53202",
"5": "444 E CORCORAN AV,FLR 1,MILWAUKEE,WI53202",
"4": "444 E CORCORAN AV,BLDG SECUR,MILWAUKEE,WI53202",
"9": "444 E CORCORAN AV,APT 304,MILWAUKEE,WI53202",
"8": "444 E CORCORAN AV,APT 303,MILWAUKEE,WI53202"
},
"intentMatched": false,
"dtvAvailFlag": false,
"preUverseGreen": false,
"customerIntent": "walkin",
"sysRespCode": "ITPA~0~01100",
"countyFIPScode": null,
"referralFilterItem": null
},
"UseATTPhoneNo": false,
"addressId": "",
"ProductSuite": null,
"isEffectiveVoipAvailable": false,
"isWirelineServiceExisting": false,
"isDTVServiceExisting": false,
"outOfFranchise": false,
"maxHsiaSpeedAvailable": null,
"isUverseServiceExisting": false,
"isDSLServiceExisting": false,
"showCTOForThirdPartyCombinedBill": false,
"isMdUAddress": null,
"lightGigFlag": false,
"dBBEligibility": false,
"isWirelessServiceExisting": false,
"isTelcoServiceExisting": false,
"maxUverseHsiaSpeedAvailable": null,
"dtvOptin": false,
"OfferId": null,
"personaId": null,
"gigaPowerNotificationFromRollout": false,
"wtModelScoreInfo": null
},
"UnifiedUserTypeBean": {
"authenticatedToUverse": false,
"authenticatedToDTV": false,
"authorizedUser": false,
"authenticatedToLegacyAccount": false,
"notEligible": false,
"unifyOnlyEligible": false,
"authenticatedToWireless": false,
"userType": null
},
"NavigationInfo": {
"navigationUrl": "/shop/unified/availability/mdu-address.html",
"segmentName": "mdu",
"isLightGigFlag": null,
"communicationErrorFlag": false,
"systemErrorFlag": false,
"errorFlag": false,
"customerIntent": null
},
"unifiedReferralInfo": {
"potentialUnifiedOffer": null,
"hsiaSpeedIneligible": false,
"source": null,
"siteId": null,
"affiliatePartner": null,
"offerValid": true,
"refUnifiedOfferIneligible": false,
"unifiedSessionFlag": false,
"iRUFanNumber": null,
"date": null,
"companyName": null
},
"referralInfo": {
"refOfferInValid": false,
"potentialNextBestOfferPrice": null,
"ReferralOfferId": null,
"titanReferral": false,
"refOfferIneligible": false,
"ReferralPkgId": null,
"ReferralFilterId": null,
"refUnifiedOfferIneligible": false,
"referralCodeExist": false,
"unifiedSessionFlag": false,
"iptvSelected": false,
"dtvLocalFlag": false,
"refPkgIneligible": false,
"iRUFanNumber": null,
"dtvPkgFlag": false,
"refCouponIneligible": false,
"hsiaSpeedIneligible": false,
"hsiaSpeedRequested": null,
"RefCouponId": null,
"voipSelected": false,
"companyName": null,
"lightGigRedirect": false,
"useNavigationInfo": true,
"potentialUnifiedOffer": null,
"destinationURL": "/shop/unified/availability/mdu-address.html",
"potentialNextBestOffer": null,
"invalidTitanReferral": false,
"uversePending": false,
"premierFailureUrl": null,
"hsiaSelected": false
},
"profile": {
"employeeSegment": null,
"state": null,
"maskServiceAddress": null,
"isDTVAvailable": false,
"LIGHTSPEEDExists": false,
"addressId": null,
"city": null,
"referralAppId": null,
"zipCode": null,
"ATTEmployeeId": null,
"zipExtension": null,
"isIPDSLAM": false,
"fccWireCenterStatus": null,
"wireCenterCode": null,
"isIPTVAvailable": false,
"LIGHTSPEEDPending": false,
"isUverseAvailable": false,
"customerType": "Consumer",
"isHSIAAvailable": false,
"dma": null,
"customerSubType": "residential",
"isCheckAvailabilityPerformed": false,
"addressLine2": null,
"wirelessHomePhoneEligible": false,
"addressLine1": null,
"migrationTargetIdentifier": null,
"isVOIPAvailable": false
}
}
By the way, ATT does have an official MDU map here: https://www.att.com/att/mdu/
Might be able to check people's findings against it to see if it is properly getting them or if we pick up some that aren't on the official map.
Thanks for sharing the MDU map! In my area I found quite a few other neighborhoods that are not listed on their map. My scans did cover one area they show as well.
Currently it looks like if a street address has multiple units (e.g. apartment complex), the speedcheck script just marks it as a bad address. It would be great if it could detect this condition and select one of the unit numbers from a list (e.g. just pick the first one would be good enough, they should all be the same), so it can get the real speed offered at MDU locations.
See the attached screenshot for the interstitial page that is inserted for MDUs: