{
switch_caller_extension_t *extension = NULL;
switch_channel_t *channel = switch_core_session_get_channel(session);
- switch_xml_t alt_root = NULL, cfg, xml = NULL, xcontext, xexten;
+ switch_xml_t alt_root = NULL, cfg, xml = NULL, xcontext, xexten = NULL;
char *alt_path = (char *) arg;
+ const char *hunt = NULL;
if (!caller_profile) {
if (!(caller_profile = switch_channel_get_caller_profile(channel))) {
}
}
- if (!(xexten = switch_xml_find_child(xcontext, "extension", "name", caller_profile->destination_number))) {
+ if ((hunt = switch_channel_get_variable(channel, "auto_hunt")) && switch_true(hunt)) {
+ xexten = switch_xml_find_child(xcontext, "extension", "name", caller_profile->destination_number);
+ }
+
+ if (!xexten) {
xexten = switch_xml_child(xcontext, "extension");
}