# Sample SMM Rules using New SDP Content and Codec Exist/Absent Condition # Rule 1: If No SDP Content if found, add a new header "No-Sdp-Content-Hdr" set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 criterion 1 type message message messageTypes request methodTypes invite set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 criterion 1 type message message condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 criterion 2 type messageBody messageBody messageBodyType sdp condition absent set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 action 1 type header operation add headerPosition last set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 action 1 from type value value No-Sdp-Body set profiles signaling sipAdaptorProfile sdpCriterionProf rule 1 action 1 to type header value No-Sdp-Content-Hdr # Rule 2: If SDP Content if found, add a new header "Has-Sdp-Content-Hdr" set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 criterion 1 type message message messageTypes request methodTypes invite set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 criterion 1 type message message condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 criterion 2 type messageBody messageBody messageBodyType sdp condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 action 1 type header operation add headerPosition last set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 action 1 from type value value Found-Sdp-Body set profiles signaling sipAdaptorProfile sdpCriterionProf rule 2 action 1 to type header value Has-Sdp-Content-Hdr # Rule 3: If codec PCMA/8000, add a new header "Found-PCMA-Hdr" set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 criterion 1 type message message messageTypes request methodTypes invite set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 criterion 1 type message message condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 criterion 2 type messageBody messageBody messageBodyType sdp condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 criterion 3 type sdpContent sdpContent codecNames PCMA/8000 condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 criterion 3 type sdpContent sdpContent streamType audio streamInstanceId 1 set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 action 1 type header operation add headerPosition last set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 action 1 from type value value PCMA/8000 set profiles signaling sipAdaptorProfile sdpCriterionProf rule 3 action 1 to type header value Found-PCMA-Hdr # Rule 4: If codec PCMA/8000 not found, add a new header "No-PCMA-Hdr" set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 criterion 1 type message message messageTypes request methodTypes invite set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 criterion 1 type message message condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 criterion 2 type messageBody messageBody messageBodyType sdp condition exist set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 criterion 3 type sdpContent sdpContent codecNames PCMA/8000 condition absent set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 criterion 3 type sdpContent sdpContent streamType audio streamInstanceId 1 set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 action 1 type header operation add headerPosition last set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 action 1 from type value value No-PCMA/8000 set profiles signaling sipAdaptorProfile sdpCriterionProf rule 4 action 1 to type header value No-PCMA-Hdr