2015-10-05 17 views
6

Dla projektu jestem zajęty interfejsem Google Adwords (biblioteka klienta = C#). Pokazuję odwiedzającym oszacowanie ruchu na podstawie słów kluczowych i miejscowości/miasta aktualnie. To z zastosowaniem metodyJak dodać promień/bliskość miasta w celu oszacowania ruchu (Google Adwords)?

https://developers.google.com/adwords/api/docs/guides/traffic-estimator-service

Chcę dodać dodatkowy wymóg: szacunek musi zawierać bliskość (promień) wynosi 15 kilometrów wokół miejscowość/miasto s. Próbowałem dodać bliskość obiektu campaignestimator, ale wystąpił błąd na podstawie odpowiedzi.

Część programcode

var proximity = new Proximity 
{ 
    radiusDistanceUnits = ProximityDistanceUnits.KILOMETERS, 
    radiusInUnits = seaConfigurationModel.Proximity, 
    geoPoint = new GeoPoint() 
    { 
     latitudeInMicroDegrees = 43633941, 
     longitudeInMicroDegrees = -79398718 
    } 
}; 
campaignEstimateRequest.criteria = new Criterion[] { languageCriterion, proximity }; 

Wyjątek:

Unmarshalling Error: cvc-elt.4.2: Cannot resolve 'q2:Proximity' to a type definition for element 'criteria'. 

Czy ktoś wie jak rozwiązać ten problem? Czy potrzebuję innej metody?

Wielkie dzięki.

Jordy

+0

Wygląda na to, że funkcja Proximity działa również tylko w AdX. Jeśli korzystasz z usługi TrafficServiceEstimator, możesz nie być AdX, ponieważ ta usługa jest wyłączona dla AdX –

Odpowiedz

1

Problem polega na tym, że CampaignEstimateRequest kryteria mogą być tylko na dwóch typach, Language i Location i starasz się przekazać typ Proximity.

Co więcej, Proximity działa (podobno) w interfejsie API AdX, co do którego podejrzewam, że może nie być używane.

To, co musisz zrobić, to obliczyć wyniki na podstawie lokalizacji, ustawić miasto docelowe, a następnie ręcznie usunąć wszystko, co nie znajduje się w promieniu.

Znalazłem jeden taki przykład, jak obliczyć włączenia promienia tutaj:

How to check if a certain coordinates fall to another coordinates radius using PHP only

Ale trzeba przekonwertować do C#.

+0

To, co musisz zrobić, to obliczyć wyniki na podstawie lokalizacji, ustawić na miasto docelowe, a następnie ręcznie usunąć wszystko, co nie jest w promieniu. Czy możesz to wyjaśnić? Znam locationId (w obiekcie Lokalizacja nie mogę podać w długości i szerokości geograficznej). Więc nie wiem, jak to rozwiązać. http://code.google.com/apis/adwords/docs/appendix/countrycodes.html – Jordy

0

Myślę, że należy wykorzystać bliskość. Kod do utworzenia celu zbliżonego jest podobny do tego, w jaki sposób dodajesz cel lokalizacji, z tym że musisz utworzyć obiekt Proximity zamiast obiektu Location.

Nie jestem pewien, ale myślę, że jeśli ustawisz obiekt zbliżeniowy jest dostępny w TrafficEstimatorService. Jednak jeśli tak, możesz ustawić promień. Sprawdź następujący adres URL: https://developers.google.com/adwords/api/docs/guides/location-targeting

Powodzenia!

Powiązane problemy