char *uuid;
if ((uuid = cmd + 9)) {
+ char *fmt;
strip_cr(uuid);
-
+
+ if ((fmt = strchr(uuid, ' '))) {
+ *fmt++ = '\0';
+ }
+
if (!(listener->session = switch_core_session_locate(uuid))) {
- switch_snprintf(reply, reply_len, "-ERR invalid uuid");
- goto done;
+ if (fmt) {
+ switch_snprintf(reply, reply_len, "-ERR invalid uuid");
+ goto done;
+ } else {
+ fmt = uuid;
+ }
+ }
+
+ if ((fmt = strchr(uuid, ' '))) {
+ if (!strcasecmp(fmt, "xml")) {
+ listener->format = EVENT_FORMAT_XML;
+ } else if (!strcasecmp(fmt, "plain")) {
+ listener->format = EVENT_FORMAT_PLAIN;
+ } else if (!strcasecmp(fmt, "json")) {
+ listener->format = EVENT_FORMAT_JSON;
+ }
}
switch_set_flag_locked(listener, LFLAG_SESSION);