From 669d613777bfac4e909b63401321e27cb54d6499 Mon Sep 17 00:00:00 2001 From: Jeremy Childs Date: Fri, 6 Mar 2015 14:39:53 -0700 Subject: [PATCH] FS7750: When using the api command group, there is no way to return the contact list separated by :_:, which is required to group call extensions that have been multiply-registered. --- src/mod/applications/mod_db/mod_db.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/mod/applications/mod_db/mod_db.c b/src/mod/applications/mod_db/mod_db.c index bfaad70dc3..8df5686896 100644 --- a/src/mod/applications/mod_db/mod_db.c +++ b/src/mod/applications/mod_db/mod_db.c @@ -513,7 +513,7 @@ SWITCH_STANDARD_APP(db_function) static int group_callback(void *pArg, int argc, char **argv, char **columnNames) { callback_t *cbt = (callback_t *) pArg; - switch_snprintf(cbt->buf + strlen(cbt->buf), cbt->len - strlen(cbt->buf), "%s%c", argv[0], *argv[1]); + switch_snprintf(cbt->buf + strlen(cbt->buf), cbt->len - strlen(cbt->buf), "%s%s", argv[0], argv[1]); cbt->matches++; return 0; } @@ -574,6 +574,9 @@ SWITCH_STANDARD_API(group_api_function) if (!strcasecmp(argv[2], "order")) { how = "|"; } + if (!strcasecmp(argv[2], "multi")) { + how = ":_:"; + } } sql = switch_mprintf("select url,'%q' from group_data where groupname='%q'", how, argv[1]); @@ -583,8 +586,8 @@ SWITCH_STANDARD_API(group_api_function) switch_safe_free(sql); if (!zstr(buf)) { - *(buf + (strlen(buf) - 1)) = '\0'; - } + *(buf + (strlen(buf) - strlen(how))) = '\0'; + } stream->write_function(stream, "%s", buf);