Merge pull request #126 in FS/freeswitch from ~HRISTO/freeswitch:timezone-all-mod_say-modules to master

* commit 'a8c5a0c87bf97ad0f84df2ad53d6eef2a951eee9':
  add timezone support to mod_say_{de,es,ja,nl,th,zh}
This commit is contained in:
Brian West 2014-12-04 11:02:25 -06:00
commit 8ed2b0737f
6 changed files with 84 additions and 6 deletions

View File

@ -226,6 +226,8 @@ static switch_status_t de_say_time(switch_core_session_t *session, char *tosay,
switch_time_t target = 0;
switch_time_exp_t tm;
uint8_t say_date = 0, say_time = 0;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
if (say_args->type == SST_TIME_MEASUREMENT) {
int64_t hours = 0;
@ -314,7 +316,18 @@ static switch_status_t de_say_time(switch_core_session_t *session, char *tosay,
} else {
target = switch_micro_time_now();
}
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME:

View File

@ -220,6 +220,8 @@ static switch_status_t es_say_time(switch_core_session_t *session, char *tosay,
switch_time_t target = 0;
switch_time_exp_t tm;
uint8_t say_date = 0, say_time = 0;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
if (say_args->type == SST_TIME_MEASUREMENT) {
int64_t hours = 0;
@ -304,7 +306,18 @@ static switch_status_t es_say_time(switch_core_session_t *session, char *tosay,
} else {
target = switch_micro_time_now();
}
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME:

View File

@ -248,6 +248,8 @@ static switch_status_t ja_say_time(switch_core_session_t *session, char *tosay,
switch_time_exp_t tm;
uint8_t say_date = 0;
uint8_t say_time = 0;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
int mod_min;
char buffer[3];
@ -322,7 +324,18 @@ static switch_status_t ja_say_time(switch_core_session_t *session, char *tosay,
target = switch_time_make(t, 0);
else
target = switch_micro_time_now();
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME:

View File

@ -178,6 +178,8 @@ static switch_status_t nl_say_time(switch_core_session_t *session, char *tosay,
switch_time_t target = 0;
switch_time_exp_t tm;
uint8_t say_date = 0, say_time = 0;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
if (say_args->type == SST_TIME_MEASUREMENT) {
int64_t hours = 0;
@ -262,7 +264,18 @@ static switch_status_t nl_say_time(switch_core_session_t *session, char *tosay,
} else {
target = switch_micro_time_now();
}
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME:

View File

@ -234,6 +234,8 @@ static switch_status_t th_say_time(switch_core_session_t *session, char *tosay,
int32_t t;
switch_time_t target = 0;
switch_time_exp_t tm;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
#if 0
switch_time_t this_morning;
switch_time_exp_t tm2;
@ -323,7 +325,18 @@ static switch_status_t th_say_time(switch_core_session_t *session, char *tosay,
target = switch_time_make(t, 0);
else
target = switch_micro_time_now();
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME:

View File

@ -198,6 +198,8 @@ static switch_status_t zh_say_time(switch_core_session_t *session, char *tosay,
int32_t t;
switch_time_t target = 0;
switch_time_exp_t tm;
switch_channel_t *channel = switch_core_session_get_channel(session);
const char *tz = switch_channel_get_variable(channel, "timezone");
#if 0
switch_time_t this_morning;
switch_time_exp_t tm2;
@ -287,7 +289,18 @@ static switch_status_t zh_say_time(switch_core_session_t *session, char *tosay,
target = switch_time_make(t, 0);
else
target = switch_micro_time_now();
switch_time_exp_lt(&tm, target);
if (tz) {
int check = atoi(tz);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Timezone is [%s]\n", tz);
if (check) {
switch_time_exp_tz(&tm, target, check);
} else {
switch_time_exp_tz_name(tz, &tm, target);
}
} else {
switch_time_exp_lt(&tm, target);
}
switch (say_args->type) {
case SST_CURRENT_DATE_TIME: