|
@@ -387,12 +387,30 @@ mytime()\
|
|
|
fprintf(conf_fp, "include => featurecodes\n");
|
|
|
if(g_row[2]){
|
|
|
memset(sql_tmp,0,sizeof(sql_tmp));
|
|
|
+ sprintf(sql_tmp,"select t_paging_users.id,t_paging_users.level from t_paging_users join t_paging_devices on t_paging_users.id = t_paging_devices.user_id\
|
|
|
+ where t_paging_devices.exten=%s",g_row[1]); //查询分机号所属的用户ID和等级
|
|
|
+ if (executesql(sql_tmp)){
|
|
|
+ print_mysql_error(NULL);
|
|
|
+ exit(1);
|
|
|
+ }
|
|
|
+ d_res = mysql_store_result(g_conn); // 从服务器传送结果集至本地,mysql_use_result直接使用服务器上的记录集
|
|
|
+ while((d_row=mysql_fetch_row(d_res))){
|
|
|
+ if (d_row[0] == NULL || d_row[1] == NULL){
|
|
|
+ printf("some feild is empty!\n");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ fprintf(conf_fp, "include => DialRule_users\n");
|
|
|
+ fprintf(conf_users_fp, "exten => %s,1,Macro(stdexten,%s,SIP/%s)\n",g_row[1],g_row[1],g_row[1]);
|
|
|
+ fprintf(global_fp, "USER_ID_%s = %s\n",g_row[1],d_row[0]);
|
|
|
+ fprintf(global_fp, "USER_LEVEL_%s = %s\n",g_row[1],d_row[1]);
|
|
|
+ }
|
|
|
+ memset(sql_tmp,0,sizeof(sql_tmp));
|
|
|
sprintf(sql_tmp,"select exten,t_paging_userServices.tPagingServiceId as service_id from t_paging_groups\
|
|
|
JOIN t_paging_userGroups on t_paging_groups.id = t_paging_userGroups.GroupId\
|
|
|
JOIN t_paging_userServices on t_paging_userServices.UserId = t_paging_userGroups.UserId\
|
|
|
where t_paging_userServices.tPagingServiceId in(1,4,9) and t_paging_userGroups.UserId\
|
|
|
in(select t_paging_users.id from t_paging_users join t_paging_devices on t_paging_users.id = t_paging_devices.user_id\
|
|
|
- where t_paging_devices.exten=%s) order by t_paging_userServices.tPagingServiceId",g_row[1]);
|
|
|
+ where t_paging_devices.exten=%s) order by t_paging_userServices.tPagingServiceId",g_row[1]); //查询分机所属管理员的权限以及所管理的组
|
|
|
if (executesql(sql_tmp)){
|
|
|
print_mysql_error(NULL);
|
|
|
exit(1);
|
|
@@ -419,24 +437,6 @@ mytime()\
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
- memset(sql_tmp,0,sizeof(sql_tmp));
|
|
|
- sprintf(sql_tmp,"select t_paging_users.id,t_paging_users.level from t_paging_users join t_paging_devices on t_paging_users.id = t_paging_devices.user_id\
|
|
|
- where t_paging_devices.exten=%s",g_row[1]);
|
|
|
- if (executesql(sql_tmp)){
|
|
|
- print_mysql_error(NULL);
|
|
|
- exit(1);
|
|
|
- }
|
|
|
- d_res = mysql_store_result(g_conn); // 从服务器传送结果集至本地,mysql_use_result直接使用服务器上的记录集
|
|
|
- while((d_row=mysql_fetch_row(d_res))){
|
|
|
- if (d_row[0] == NULL || d_row[1] == NULL){
|
|
|
- printf("some feild is empty!\n");
|
|
|
- continue;
|
|
|
- }
|
|
|
- fprintf(conf_fp, "include => DialRule_users\n");
|
|
|
- fprintf(conf_users_fp, "exten => %s,1,Macro(stdexten,%s,SIP/%s)\n",g_row[1],g_row[1],g_row[1]);
|
|
|
- fprintf(global_fp, "USER_ID_%s = %s\n",g_row[1],d_row[0]);
|
|
|
- fprintf(global_fp, "USER_LEVEL_%s = %s\n",g_row[1],d_row[1]);
|
|
|
- }
|
|
|
}else{
|
|
|
memset(sql_tmp,0,sizeof(sql_tmp));
|
|
|
sprintf(sql_tmp,"select UserId from t_paging_deviceGroups JOIN t_paging_userGroups on t_paging_deviceGroups.GroupId = t_paging_userGroups.GroupId where DeviceId = %s group by UserId",g_row[0]);
|