You can track some of what's happening on this here...
https://github.com/spark/firmware/issues/211
meanwhile you could use a webhook to compare local time to GMT, but you have to know where on earth you are:
or you can simply calculate it, if you know you are in CST, for example:
bool IsDST(int dayOfMonth, int month, int dayOfWeek) // North American values
{
if (month < 3 || month > 11)
{
return false;
}
if (month > 3 && month < 11)
{
return true;
}
int previousSunday = dayOfMonth - dayOfWeek;
if (month == 3)
{
return previousSunday >= 8;
}
return previousSunday <= 0;
}
and in loop()
bool daylightSavings = IsDST(Time.day(), Time.month(), Time.weekday());
Time.zone(daylightSavings? -5 : -6);