ast_string_field_build_va(tmp, name, name_fmt, ap1, ap2);
va_end(ap1);
va_end(ap2);
-
- /* and now, since the channel structure is built, and has its name, let's call the
- * manager event generator with this Newchannel event. This is the proper and correct
- * place to make this call, but you sure do have to pass a lot of data into this func
- * to do it here!
- */
- manager_event(EVENT_FLAG_CALL, "Newchannel",
- "Channel: %s\r\n"
- "ChannelState: %d\r\n"
- "ChannelStateDesc: %s\r\n"
- "CallerIDNum: %s\r\n"
- "CallerIDName: %s\r\n"
- "AccountCode: %s\r\n"
- "Uniqueid: %s\r\n",
- tmp->name,
- state,
- ast_state2str(state),
- S_OR(cid_num, ""),
- S_OR(cid_name, ""),
- tmp->accountcode,
- tmp->uniqueid);
}
/* Reminder for the future: under what conditions do we NOT want to track cdrs on channels? */
AST_RWLIST_INSERT_HEAD(&channels, tmp, chan_list);
AST_RWLIST_UNLOCK(&channels);
+ /*\!note
+ * and now, since the channel structure is built, and has its name, let's
+ * call the manager event generator with this Newchannel event. This is the
+ * proper and correct place to make this call, but you sure do have to pass
+ * a lot of data into this func to do it here!
+ */
+ if (!ast_strlen_zero(name_fmt)) {
+ manager_event(EVENT_FLAG_CALL, "Newchannel",
+ "Channel: %s\r\n"
+ "ChannelState: %d\r\n"
+ "ChannelStateDesc: %s\r\n"
+ "CallerIDNum: %s\r\n"
+ "CallerIDName: %s\r\n"
+ "AccountCode: %s\r\n"
+ "Uniqueid: %s\r\n",
+ tmp->name,
+ state,
+ ast_state2str(state),
+ S_OR(cid_num, ""),
+ S_OR(cid_name, ""),
+ tmp->accountcode,
+ tmp->uniqueid);
+ }
+
return tmp;
}