Snippets

VirtualWolf Sending weather updates to Slack

Created by VirtualWolf
const request = require('superagent');

module.exports = {
    postCurrentWeatherToRoom: async() => {
        const outdoor = await weatherService.getCurrentTemperatureAndHumidity({location: 'outdoor'});
        const indoor = await weatherService.getCurrentTemperatureAndHumidity({location: 'indoor'});

        const payload = {
            attachments: [
                {
                    fallback: `Outdoor: ${outdoor.temperature}˚C & ${outdoor.humidity}%`,
                    color: '#FFAB00',
                    mrkdwn_in: ['fields'],
                    fields: [{value: `Outdoor: *${outdoor.temperature}˚C* & ${outdoor.humidity}%`}],
                },
                {
                    fallback: `Indoor: ${indoor.temperature}˚C & ${indoor.humidity}%`,
                    color: '#00B8D9',
                    'mrkdwn_in': ['fields'],
                    'fields': [{'value': `Indoor: *${indoor.temperature}˚C* & ${indoor.humidity}%`}],
                },
            ],
        };

        return await request.post(process.env.SLACK_WEATHER_WEBHOOK_URL)
            .send(payload);
    },
};

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.