diff -Naur asterisk-1.4.21.1/main/config.c asterisk-1.4.21.1_new/main/config.c --- asterisk-1.4.21.1/main/config.c 2008-06-03 18:15:33.000000000 -0400 +++ asterisk-1.4.21.1_new/main/config.c 2008-07-21 11:20:48.000000000 -0400 @@ -1026,15 +1026,15 @@ if ((fd = mkstemp(fntmp)) > 0 && (f = fdopen(fd, "w")) != NULL) { if (option_verbose > 1) ast_verbose(VERBOSE_PREFIX_2 "Saving '%s': ", fn); - fprintf(f, ";!\n"); - fprintf(f, ";! Automatically generated configuration file\n"); - if (strcmp(configfile, fn)) - fprintf(f, ";! Filename: %s (%s)\n", configfile, fn); - else - fprintf(f, ";! Filename: %s\n", configfile); - fprintf(f, ";! Generator: %s\n", generator); - fprintf(f, ";! Creation Date: %s", date); - fprintf(f, ";!\n"); + //fprintf(f, ";!\n"); + //fprintf(f, ";! Automatically generated configuration file\n"); + //if (strcmp(configfile, fn)) + // fprintf(f, ";! Filename: %s (%s)\n", configfile, fn); + //else + // fprintf(f, ";! Filename: %s\n", configfile); + //fprintf(f, ";! Generator: %s\n", generator); + //fprintf(f, ";! Creation Date: %s", date); + //fprintf(f, ";!\n"); cat = cfg->root; while(cat) { /* Dump section with any appropriate comment */ @@ -1043,8 +1043,8 @@ if (cmt->cmt[0] != ';' || cmt->cmt[1] != '!') fprintf(f,"%s", cmt->cmt); } - if (!cat->precomments) - fprintf(f,"\n"); + //if (!cat->precomments) + // fprintf(f,"\n"); fprintf(f, "[%s]", cat->name); if (cat->ignored || !AST_LIST_EMPTY(&cat->template_instances)) { fprintf(f, "("); diff -Naur asterisk-1.4.21.1/pbx/pbx_config.c asterisk-1.4.21.1_new/pbx/pbx_config.c --- asterisk-1.4.21.1/pbx/pbx_config.c 2008-06-04 12:26:43.000000000 -0400 +++ asterisk-1.4.21.1_new/pbx/pbx_config.c 2008-07-21 11:31:31.000000000 -0400 @@ -2362,10 +2362,13 @@ struct ast_config *cfg; char *cat, *chan; const char *zapchan; + const char *pikachan; const char *hasexten; char tmp[256]; char iface[256]; char zapcopy[256]; + char pikacopy[256]; + char pika_dev[256]; char *c; int len; int hasvoicemail; @@ -2425,6 +2428,21 @@ chan = strsep(&c, ","); } } + pikachan = ast_variable_retrieve(cfg, cat, "pikachan"); + if (!pikachan) + pikachan = ast_variable_retrieve(cfg, "general", "pikachan"); + if (!ast_strlen_zero(pikachan)) { + ast_copy_string(pikacopy, pikachan, sizeof(pikacopy)); + c = pikacopy; + chan = strsep(&c, ","); + while (chan) { + if (sscanf(chan, "%s", pika_dev)) { + snprintf(tmp, sizeof(tmp), "PIKA/%s", pika_dev); + append_interface(iface, sizeof(iface), tmp); + } + chan = strsep(&c, ","); + } + } if (!ast_strlen_zero(iface)) { /* Only create a context here when it is really needed. Otherwise default empty context created by pbx_config may conflict with the one explicitly created by pbx_ael */ diff -Naur asterisk-1.4.21.1/sounds/sounds.xml asterisk-1.4.21.1_new/sounds/sounds.xml --- asterisk-1.4.21.1/sounds/sounds.xml 2006-10-25 13:08:58.000000000 -0400 +++ asterisk-1.4.21.1_new/sounds/sounds.xml 2008-07-21 11:18:03.000000000 -0400 @@ -2,11 +2,11 @@ + yes - yes