[server] / trunk / clients / asterisk / chan_woomera / chan_woomera.c Repository:
ViewVC logotype

Diff of /trunk/clients/asterisk/chan_woomera/chan_woomera.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 689, Wed Apr 21 14:05:18 2010 UTC revision 690, Thu Apr 22 11:05:25 2010 UTC
# Line 20  Line 20 
20   * the GNU General Public License   * the GNU General Public License
21   * =============================================   * =============================================
22   *   *
23     * v1.59 Antony Martin <antony.martin@dialogic.com>
24     * Apr 22 2010
25     *     Fix in clone_woomera_profile.
26     *
27   * v1.58 John Tarlton <john.tarlton@dialogic.com>   * v1.58 John Tarlton <john.tarlton@dialogic.com>
28   * Mar 19 2010   * Mar 19 2010
29   *     New app WoomeraStop currently allows WoomeraBackground   *     New app WoomeraStop currently allows WoomeraBackground
# Line 683  Line 687 
687    
688  extern int option_verbose;  extern int option_verbose;
689    
690  #define WOOMERA_VERSION "v1.58"  #define WOOMERA_VERSION "v1.59"
691  #ifndef WOOMERA_CHAN_NAME  #ifndef WOOMERA_CHAN_NAME
692  #define WOOMERA_CHAN_NAME "WOOMERA"  #define WOOMERA_CHAN_NAME "WOOMERA"
693  #endif  #endif
# Line 3956  Line 3960 
3960  {  {
3961          memcpy(new_profile, default_profile, sizeof(woomera_profile));          memcpy(new_profile, default_profile, sizeof(woomera_profile));
3962          memset(new_profile->tg_context, 0, sizeof(new_profile->tg_context));          memset(new_profile->tg_context, 0, sizeof(new_profile->tg_context));
3963            memset(new_profile->tg_language, 0, sizeof(new_profile->tg_language));
3964          return new_profile;          return new_profile;
3965  }  }
3966    
# Line 3994  Line 3999 
3999          int count = 0;          int count = 0;
4000    
4001          memset(&default_profile, 0, sizeof(default_profile));          memset(&default_profile, 0, sizeof(default_profile));
4002    
4003  #if defined (AST_JB)  #if defined (AST_JB)
4004          memcpy(&global_jbconf, &default_jbconf, sizeof(struct ast_jb_conf));          memcpy(&global_jbconf, &default_jbconf, sizeof(struct ast_jb_conf));
4005  #endif  #endif
# Line 4090  Line 4096 
4096                                          } else if (!strcmp(v->name, "default_context")) {                                          } else if (!strcmp(v->name, "default_context")) {
4097                                                  default_context_set = 1;                                                  default_context_set = 1;
4098                                                  strncpy(profile->default_context, v->value, sizeof(profile->default_context) - 1);                                                  strncpy(profile->default_context, v->value, sizeof(profile->default_context) - 1);
4099                                            } else if (!strcmp(v->name, "language")) {
4100                                                    strncpy(profile->language, v->value, sizeof(profile->language) - 1);
4101                                          } else if (!strcmp(v->name, "group")) {                                          } else if (!strcmp(v->name, "group")) {
4102                                                  int group_num = atoi(v->value);                                                  int group_num = atoi(v->value);
4103                                                  if (group_num < 0) {                                                  if (group_num < 0) {
# Line 4109  Line 4117 
4117                                                                  profile->tg_language[group_num] = strdup(profile->language);                                                                  profile->tg_language[group_num] = strdup(profile->language);
4118                                                          }                                                          }
4119                                                  }                                                  }
4120                                          } else if (!strcmp(v->name, "language")) {  
                                                 strncpy(profile->language, v->value, sizeof(profile->language) - 1);  
4121                                          } else if (!strcmp(v->name, "dtmf_enable")) {                                          } else if (!strcmp(v->name, "dtmf_enable")) {
4122                                                  profile->dtmf_enable = atoi(v->value);                                                  profile->dtmf_enable = atoi(v->value);
4123                                          } else if (!strcmp(v->name, "send_dtmf")) {                                          } else if (!strcmp(v->name, "send_dtmf")) {
# Line 4194  Line 4201 
4201                                                  }                                                  }
4202                                          }                                          }
4203                                  }                                  }
   
4204                                  ASTOBJ_CONTAINER_LINK(&woomera_profile_list, profile);                                  ASTOBJ_CONTAINER_LINK(&woomera_profile_list, profile);
4205                          }                          }
4206                  }                  }
# Line 4505  Line 4511 
4511                  ast_mutex_unlock(&lock);                  ast_mutex_unlock(&lock);
4512                  return 0;                  return 0;
4513          }          }
   
4514          ASTOBJ_CONTAINER_TRAVERSE(&woomera_profile_list, 1, do {          ASTOBJ_CONTAINER_TRAVERSE(&woomera_profile_list, 1, do {
4515                  ASTOBJ_RDLOCK(iterator);                  ASTOBJ_RDLOCK(iterator);
4516                  profile = iterator;                  profile = iterator;
# Line 7086  Line 7091 
7091  int load_module(void)  int load_module(void)
7092  {  {
7093          int x;          int x;
7094            ASTOBJ_CONTAINER_INIT(&private_object_list);
7095            ASTOBJ_CONTAINER_INIT(&woomera_profile_list);
7096    
7097          if (!(sched = sched_context_create())) {          if (!(sched = sched_context_create())) {
7098                  ast_log(LOG_ERROR, "Unable to create scheduler context\n");                  ast_log(LOG_ERROR, "Unable to create scheduler context\n");
# Line 7146  Line 7153 
7153    
7154          signal(SIGURG, urg_handler);          signal(SIGURG, urg_handler);
7155    
7156          ASTOBJ_CONTAINER_INIT(&private_object_list);  
7157    
7158  #ifdef CALLWEAVER  #ifdef CALLWEAVER
7159  #ifdef CALLWEAVER_19  #ifdef CALLWEAVER_19

Legend:
Removed from v.689  
changed lines
  Added in v.690

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.8