Skip to content

AccuWeather

AccuWeather est une société de médias qui fournit des services de prévisions météorologiques dans le monde entier. Avec AccuWeather, vous pouvez enrichir et personnaliser vos campagnes marketing, ainsi qu’automatiser la traduction grâce au [contenu connecté][60] de Braze.

Conditions préalables

API AccuWeather disponibles

Voici les API AccuWeather que vous pouvez référencer dans vos campagnes et Canvases Braze.

Exemple de contenu connecté

L’exemple suivant montre un appel de contenu connecté affichant deux types de messages différents en fonction des conditions actuelles du code postal d’un utilisateur aux États-Unis. Les emplacements AccuWeather et les points de terminaison de l’API des conditions actuelles sont utilisés.

1
2
3
4
5
6
7
8
9
10
11
{% connected_content http:///dataservice.accuweather.com/locations/v1/postalcodes/{{${country}}}/search?q={{custom_attribute.${Zip Code}}}&apikey={your API key} :save location_info %}

{% connected_content http://dataservice.accuweather.com/currentconditions/v1/{{location_info[0].Key}}?apikey={your API key} :save local_weather %}

{% if {{local_weather[0].WeatherText}} == 'Cloudy' %}
No sunscreen needed :)
{% elsif {{local_weather[0].WeatherText}} == 'Rain' %}
It's raining! Grab an umbrella!
{% else %}
Enjoy the weather!
{% endif %}

Un message push de contenu connecté qui dit « Il pleut ! Prends un parapluie ! « affiché sur un appareil Android

Vous trouverez une ventilation des deux appels relatifs au contenu connecté dans les exemples suivants.

Exemple d’API de localisation

Dans la première balise connected_content, une requête GET est envoyée à l’API des localisations. Pour cet exemple, vous pouvez également tirer parti de celui de l’utilisateur {{${city}}} si vous ne disposez pas d’un attribut personnalisé de code postal.

1
{% connected_content http://dataservice.accuweather.com/locations/v1/postalcodes/{{${country}}}/search?q={{custom_attribute.${Zip Code}}}&apikey={your API key} :save location_info %}

Voici un exemple de ce qu’AccuWeather renverra en tant qu’objet JSON :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
[
  {
    "Version": 1,
    "Key": "41333_PC",
    "Type": "PostalCode",
    "Rank": 35,
    "LocalizedName": "Seattle",
    "EnglishName": "Seattle",
    "PrimaryPostalCode": "98102",
    "Region": {
      "ID": "NAM",
      "LocalizedName": "North America",
      "EnglishName": "North America"
    },
    "Country": {
      "ID": "US",
      "LocalizedName": "United States",
      "EnglishName": "United States"
    },
    "AdministrativeArea": {
      "ID": "WA",
      "LocalizedName": "Washington",
      "EnglishName": "Washington",
      "Level": 1,
      "LocalizedType": "State",
      "EnglishType": "State",
      "CountryID": "US"
    },
    "TimeZone": {
      "Code": "PDT",
      "Name": "America/Los_Angeles",
      "GmtOffset": -7.0,
      "IsDaylightSaving": true,
      "NextOffsetChange": "2018-11-04T09:00:00Z"
    },
    "GeoPosition": {
      "Latitude": 47.636,
      "Longitude": -122.327,
      "Elevation": {
        "Metric": {
          "Value": 26.0,
          "Unit": "m",
          "UnitType": 5
        },
        "Imperial": {
          "Value": 85.0,
          "Unit": "ft",
          "UnitType": 0
        }
      }
    },
    "IsAlias": false,
    "ParentCity": {
      "Key": "351409",
      "LocalizedName": "Seattle",
      "EnglishName": "Seattle"
    },
    "SupplementalAdminAreas": [
      {
        "Level": 2,
        "LocalizedName": "King",
        "EnglishName": "King"
      }
    ],
    "DataSets": [
      "Alerts",
      "DailyAirQualityForecast",
      "DailyPollenForecast",
      "ForecastConfidence",
      "MinuteCast"
    ]
  }
]

L’ID « Key » est une variable utile car elle est utilisée dans la deuxième requête GET. Cet objet JSON peut être stocké dans une variable locale location_info en spécifiant :save location_info après l’URL.

Exemple d’API pour les conditions actuelles

Pour la deuxième balise connected_content, une requête GET est envoyée à l’API des conditions actuelles. La clé d’emplacement/localisation devra être ajoutée à l’URL de la requête. Voici l’exemple de la balise connected_content :

1
{% connected_content http://dataservice.accuweather.com/currentconditions/v1/{{location_info[0].Key}}?apikey={your API key} :save local_weather %}

Voici l’objet JSON renvoyé :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[
  {
    "LocalObservationDateTime": "2018-04-10T09:35:00-07:00",
    "EpochTime": 1523378100,
    "WeatherText": "Rain",
    "WeatherIcon": 18,
    "IsDayTime": true,
    "Temperature": {
      "Metric": {
        "Value": 11.0,
        "Unit": "C",
        "UnitType": 17
      },
      "Imperial": {
        "Value": 52.0,
        "Unit": "F",
        "UnitType": 18
      }
    },
    "MobileLink": "http://m.accuweather.com/en/us/seattle-wa/98104/current-weather/41333_pc?lang=en-us",
    "Link": "http://www.accuweather.com/en/us/seattle-wa/98104/current-weather/41333_pc?lang=en-us"
  }
]

Comme le montre la balise connected_content, l’objet JSON est stocké dans une variable locale local_weather en ajoutant :save local_weather après l’URL.

Vous pouvez tester ce que devrait être le résultat du WeatherText en le {{local_weather[0].WeatherText}} référençant.

Si l’appel d’API répond par un {{local_weather[0].WeatherText}} renvoyant Rain, l’utilisateur recevra alors la notification push.

Il y a [49]: https://apidev.accuweather.com/developers/forecastsAPIguide Il y a [50]: https://apidev.accuweather.com/developers/currentConditionsAPIGuide Il y a [51]: https://apidev.accuweather.com/developers/indicesApiGuide Il y a [52]: https://apidev.accuweather.com/developers/weatheralarmsAPIguide Il y a [53]: https://apidev.accuweather.com/developers/alertsApiGuide Il y a [54]: https://apidev.accuweather.com/developers/imageryAPIguide Il y a [55]: https://apidev.accuweather.com/developers/tropicalAPIGuide Il y a [56]: https://apidev.accuweather.com/developers/translationsApiGuide Il y a [57]: https://apidev.accuweather.com/developers/ [58]: https://apidev.accuweather.com/developers/weatheralarms [60]: /docs/fr/user_guide/personalization_and_dynamic_content/connected_content/about_connected_content/

CETTE PAGE A-T-ELLE ÉTÉ UTILE?
New Stuff!