# ns_behaviour field

The ns_behaviour field in ISDN_PROTOCOL_PARMS_Q931CC determines which automatic responses the NS layer makes. Refer to isdnparm.h for more details.

The bit settings in this field are ignored when the protocol stack is started in channelized stack mode. Each bit set by the value in this field determines a particular element of the NS layer's behavior. The values are defined as follows:

Value | Description
--- | ---
NS_ACCEPT_UNKNOWN_FAC_IE | If this bit is set, the stack accepts incoming messages containing facility IEs that it does not recognize. The stack does not check the IE: it operates as if the facility IE is correct. If this bit is not set, the stack rejects messages containing unknown facility IEs. This bit must be set for the bridge calls and notify transfer supplementary services to operate. For more information, see the NMS ISDN Supplementary Services Developer's Reference Manual.
NS_BEHAVIOUR_NIL | If this bit is set, the ISDN stack behaves as if none of the other ns_behaviour bits are set.
NS_DISABLE_RESTART | This bit is used to disable the RESTART procedure in the stack. If this bit is set, the stack does not send RESTART messages when it is stopped, but it also does not respond to incoming RESTART messages. Do not set this bit unless you are certain that the remote end does not implement the RESTART procedure.
NS_EXPLICIT_INTERFACE_ID | If this bit is set, outbound call control messages (for example, SETUP or PROCEEDING) contain the NAI in the channel ID IE, as defined in the configuration file. Use this bit only for US variants.
NS_IE_RELAY_BEHAVIOUR | This bit applies only when the NS_RELAY compile-time option is set to ON. The stack passes IEs received from the line transparently (as in incoming transparent mode). Layer 3 procedures are still in use. You can send IEs transparently to the line using a second buffer, possibly including unknown or unexpected IEs. The NS layer does not consider unknown or unexpected IEs received from the line as erroneous.
NS_NO_STATUS_ON_INV_OP_IE | If this bit is set, the stack does not generate a STATUS message when it receives a message containing one or more optional IE(s) with invalid content. This bit applies only to network variants for which the sending of STATUS under such circumstances is optional.
NS_NO_STATUS_ON_UNKNOWN_IE | If this bit is set, the stack does not generate a STATUS message when it receives a message containing one or more unknown/unrecognized IE(s). This bit applies only to network variants for which the sending of STATUS under these circumstances is optional.
NS_PBX_XY | DPNSS only. This bit reverses the default X and Y assignments. The default assignments (NS_PBX_XY = 0) are: TE => PBX A, side X NT => PBX B, side Y Setting this bit changes the assignments to: TE => PBX A, side Y NT => PBX B, side X
NS_PBX_XY_ALTERNATE | DPNSS only. This bit supports the following channel configuration:
Channel | Configuration 1 | Configuration 2
1 | X | Y
2 | Y | X
...
14 | Y | X
15 | X | Y
16 | none | (signaling)
17 | X | Y
18 | Y | X
...
30 | Y | X
31 | X | Y
If this bit is not set, all channels have the same configuration as channel 1. If this bit is set, all odd channels (1, 3 ... 15, 17 ... 31) have the same configuration as channel 1. All even channels (2, 4, 6 ... 14, 16 ... 30) have a configuration opposite to that of channel 1 (for example, Y if channel 1 is X and vice versa).
NS_PRESERVE_EXT_BIT_IN_CHAN_ID | This bit applies when the configuration is DMS and USA, and for an incoming call. When it is set, the extension bit in the channel ID's octets 3.3 is set to the value used in the SETUP message, for use inside PROCEEDING or ALERT messages.
NS_SEND_USER_CONNECT_ACK | Setting this bit applies when the configuration is ETS, EUROPE, TE-side, outgoing call. If this bit is set, the ISDN stack sends a CONNECT_ACK message in response to a received CONNECT message.

If ns_behaviour is set to 0 or not set at all, the ISDN protocol stack behaves as if the NS_IE_RELAY_BEHAVIOUR bit is set and all other bits are cleared.