[Freeswitch-svn] [commit] r13974 - in freeswitch/trunk/contrib/ledr/mod_xml_odbc: . xml_odbc_templates
FreeSWITCH SVN
ledr at freeswitch.org
Fri Jun 26 07:09:47 PDT 2009
Author: ledr
Date: Fri Jun 26 09:09:47 2009
New Revision: 13974
Log:
Added Makefile again, created directory template compatible with swk's sql schema
Added:
freeswitch/trunk/contrib/ledr/mod_xml_odbc/Makefile
freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc_templates/directory_swk.xml
Modified:
freeswitch/trunk/contrib/ledr/mod_xml_odbc/mod_xml_odbc.c
freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc.conf.xml
Added: freeswitch/trunk/contrib/ledr/mod_xml_odbc/Makefile
==============================================================================
--- (empty file)
+++ freeswitch/trunk/contrib/ledr/mod_xml_odbc/Makefile Fri Jun 26 09:09:47 2009
@@ -0,0 +1,2 @@
+BASE=../../..
+include $(BASE)/build/modmake.rules
Modified: freeswitch/trunk/contrib/ledr/mod_xml_odbc/mod_xml_odbc.c
==============================================================================
--- freeswitch/trunk/contrib/ledr/mod_xml_odbc/mod_xml_odbc.c (original)
+++ freeswitch/trunk/contrib/ledr/mod_xml_odbc/mod_xml_odbc.c Fri Jun 26 09:09:47 2009
@@ -174,14 +174,10 @@
new_value = switch_event_expand_headers(params, value);
if (!strcasecmp(name, "break-to")) {
-// if (xml_odbc_render_template(new_value, params, xml_out, off) == SWITCH_STATUS_FALSE) {
-// if (!switch_strlen_zero(no_template_break_to)) {
/* have a look at this again, not too happy about this next_template_name thing.. */
- switch_event_del_header(params, "next_template_name");
- switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "next_template_name", value);
- return SWITCH_STATUS_FALSE;
-// }
-// }
+ switch_event_del_header(params, "next_template_name");
+ switch_event_add_header_string(params, SWITCH_STACK_BOTTOM, "next_template_name", value);
+ return SWITCH_STATUS_FALSE;
} else if (!strcasecmp(name, "query")) {
query_helper.xml_in = xml_in;
query_helper.xml_out = xml_out;
Modified: freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc.conf.xml
==============================================================================
--- freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc.conf.xml (original)
+++ freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc.conf.xml Fri Jun 26 09:09:47 2009
@@ -9,6 +9,7 @@
-->
<binding name="directory">
<param name="odbc-dsn" value="freeswitch:freeswitch:secret"/>
+ <!-- <param name="template" value="directory_swk"/> -->
<param name="template" value="directory"/>
</binding>
<!--
Added: freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc_templates/directory_swk.xml
==============================================================================
--- (empty file)
+++ freeswitch/trunk/contrib/ledr/mod_xml_odbc/xml_odbc_templates/directory_swk.xml Fri Jun 26 09:09:47 2009
@@ -0,0 +1,90 @@
+<include>
+ <template name="directory_swk" description="based on swk's shipment sql">
+ <document type="freeswitch/xml">
+ <xml-odbc-do name="query" on-empty-result-break-to="not_found" value="
+ SELECT
+ domains.uid AS domains_uid,
+ users.uid AS users_uid,
+ users.cidr,
+ users.mailbox
+ FROM
+ domains,
+ users
+ WHERE
+ users.username = '${user}' AND
+ domains.name = '${domain}' AND
+ users.domains_uid = domains.uid AND
+ domains.enabled = '1' AND
+ users.enabled = '1';"/>
+ <section name="directory">
+ <domain name="${domain}">
+ <params>
+ <xml-odbc-do name="query" value="
+ SELECT
+ name, value
+ FROM
+ domain_params
+ WHERE
+ domains_uid = '${domains_uid}';">
+ <param name="${name}" value="${value}"/>
+ </xml-odbc-do>
+ </params>
+ <variables>
+ <xml-odbc-do name="query" value="
+ SELECT
+ name, value
+ FROM
+ domain_variables
+ WHERE
+ domains_uid = '${domains_uid}';">
+ <variable name="${name}" value="${value}"/>
+ </xml-odbc-do>
+ </variables>
+ <groups>
+ <group name="default">
+ <users>
+ <user id="${user}" mailbox="${mailbox}" cidr="${cidr}">
+ <params>
+ <xml-odbc-do name="query" on-empty-result-break-to="not_found" value="
+ SELECT
+ name, value
+ FROM
+ user_params
+ WHERE
+ users_uid = '${users_uid}';">
+ <param name="${name}" value="${value}"/>
+ </xml-odbc-do>
+ </params>
+ <variables>
+ <xml-odbc-do name="query" value="
+ SELECT
+ name, value
+ FROM
+ user_variables
+ WHERE
+ users_uid = '${users_uid}';">
+ <variable name="${name}" value="${value}"/>
+ </xml-odbc-do>
+ </variables>
+ </user>
+ </users>
+ </group>
+ <xml-odbc-do name="query" value="
+ SELECT
+ name AS group_name
+ FROM
+ groups,
+ group_members
+ WHERE
+ group_members.groups_uid = groups.uid AND
+ users_uid = '${users_uid}';">
+ <group name="${group_name}">
+ <user id="${user}" type="pointer"/>
+ </group>
+ </xml-odbc-do>
+ </groups>
+ </domain>
+ </section>
+ </document>
+ </template>
+</include>
More information about the Freeswitch-svn
mailing list