You are here: SwitchKit® Development Environment - Installation and Maintenance Guide > 9 Server Status Change > ServerStatusChange

ServerStatusChange

Type

SwitchKit API message

Description

The LLC sends the ServerStatusChange message containing all the information needed by an application to determine the current status of a node. The message is sent when the LLC discovers a change in CSP status.

C Structure

typedef struct {

unsigned short Status;

UBYTE SystemType;

UBYTE MatrixSide;

UBYTE MatrixState;

UBYTE AdjMatrixState;

UBYTE StatusBits;

UBYTE Reserved1;

UBYTE Reserved2;

unsigned short ExcelPort;

int PhysicalNode;

UBYTE LogicalNode;

UBYTE HostNode;

UBYTE NodeStatus;

UBYTE MessageTrigger;

UBYTE FromPrimary;

UBYTE SocketStatus;

unsigned short UpdatedFieldBits;

UBYTE reserved40[1];

} SK_ServerStatusChange;

C++ Class

class SKC_ServerStatusChange : public SKC_DummyMessage {

public:

unsigned short getStatus() const;

void setStatus(unsigned short x);

UBYTE getSystemType() const;

void setSystemType(UBYTE x);

UBYTE getMatrixSide() const;

void setMatrixSide(UBYTE x);

UBYTE getMatrixState() const;

void setMatrixState(UBYTE x);

UBYTE getAdjMatrixState() const;

void setAdjMatrixState(UBYTE x);

UBYTE getStatusBits() const;

void setStatusBits(UBYTE x);

UBYTE getReserved1() const;

void setReserved1(UBYTE x);

UBYTE getReserved2() const;

void setReserved2(UBYTE x);

unsigned short getExcelPort() const;

void setExcelPort(unsigned short x);

int getPhysicalNode() const;

void setPhysicalNode(int x);

UBYTE getLogicalNode() const;

void setLogicalNode(UBYTE x);

UBYTE getHostNode() const;

void setHostNode(UBYTE x);

UBYTE getNodeStatus() const;

void setNodeStatus(UBYTE x);

UBYTE getMessageTrigger() const;

void setMessageTrigger(UBYTE x);

UBYTE getFromPrimary() const;

void setFromPrimary(UBYTE x);

UBYTE getSocketStatus() const;

void setSocketStatus(UBYTE x;

unsigned short getUpdatedFieldBits();

void setUpdatedFieldBits(unsigned short x);

};

Conditions for Sending the ServerStatusChange Message

The following list shows the conditions that will cause the LLC to send a ServerStatusChange message:

• SK_PM_CHANGE - sent when the first poll is received by the LLC for a CSP Matrix Series 3 Card. Also sent any time a value changes in the Poll. The UpdatedFieldBits field indicates which fields have changed since the last poll. The following is a possible scenario:

1. The adjacent matrix has lost connection to the LCC running on the host. Either the LAN connection is severed or the host has severe CPU depravation. Diagnose the LAN connection. Determine if the matrix card can receive and return ping messages. If the LAN connection is good, check the performance of the host.

• SK_SSC_UPDATE - sent under the following conditions:

1. When an application registers for the ServerStatusChange notification via sk_msgRegister(), an SSC_UPDATE is sent for each node the LLC is currently connected to which has a CSP Matrix Series 3 Card in the active state.

2. When an application issues an AddLLCNode, an SSC_UPDATE may be generated if the LLC already knew about the node and the LLC is currently connected to the active CSP Matrix Series 3 Card for that node. In other words, if the Link is considered to be up.

• SK_LINK_UP - sent under the following conditions:

1. This message is sent to indicate that there is a connection to the active CSP Matrix Series 3 Card for this node and the CSP Matrix Series 3 Card is ready to be configured. This will be sent if this is a new condition (i.e. we were not previously connected to the active CSP Matrix Series 3 Card).

2. Sent if an application has performed an AddLLCNode, the LLC is currently connected to the specified node, and the LLC is connected to the active CSP Matrix Series 3 Card of that node.

3. When an application registers for the ServerStatusChange notification via sk_msgRegister(), and the LLC is connected to the active CSP Matrix Series 3 Card of a node.

• SK_LINK_DOWN - sent under the following conditions:

1. This message is sent to indicate that there is NO connection to the active CSP Matrix Series 3 Card for a node. This will be sent if this is a new condition (that is, we were previously connected to the active CSP Matrix Series 3 Card).

2. Sent if an application has performed an AddLLCNode, and the LLC is not currently connected to the specified node’s active CSP Matrix Series 3 Card.

3. When an application registers for the ServerStatusChange notification via sk_msgRegister(), and the LLC is supposed to be connected to a node but is not connected to the node's active CSP Matrix Series 3 Card.

More on SK_LINK_UP and SK_LINK_DOWN

• Registering for ServerStatusChange will result in an SK_LINK_UP or SK_LINK_DOWN for each node controlled by the LLC. If an SK_LINK_UP is sent, it will be followed by an SK_SSC_UPDATE with the last poll from the active CSP Matrix Series 3 Card.

• Performing an AddLLCNode will result in an SK_LINK_UP or SK_LINK_DOWN for the specified node if the LLC is already controlling the node. If an SK_LINK_UP is sent, it will be followed by an SK_SSC_UPDATE with the last poll from the active CSP Matrix Series 3 Card, if the LLC is currently connected to the CSP Matrix Series 3 Card in the active state.

• SK_PM_CHANGE, SK_SOCKET_CHANGE, SK_LINK_UP and SK_LINK_DOWN are generated to indicate a change in state.

• SK_NSQ_CHANGE or SK_NSR_CHANGE are generated upon arrival of NodeStatusQueryAck or NodeStatusReport from the CSP.

Arguments

The following table indicates what arguments are valid for a specific message trigger:

MessageTrigger | Argument | Description
--- | --- | ---
SK_PM_CHANGE or SK_SSC_UPDATE | PhysicalNode | Represents the requested Node ID
LogicalNode | Represents the current Node ID as reported by the CSP in PollMessage
SocketStatus | 1 always. Socket must be connected for this indication to occur.
Status | Status from PollMessage
SystemType | System Type(Poll Source) from PollMessage
MatrixSide | CSP Matrix Series 3 Card ID from PollMessage
MatrixState | Matrix State(Card State) from PollMessage
AdjMatrixState | Adjacent Card State from PollMessage
StatusBits | Card Status from PollMessage
CSP Port | Double Byte after Multi Host Connection Status Byte 2 in PollMessage
UpdatedFieldBits | Bit mask indicating which fields in the poll were updated. See table below for details of the meaning of the bits. Only set for SK_PM_CHANGE
SK_LINK_UP or SK_LINK_DOWN | PhysicalNode | Requested Node ID
LogicalNode | Requested Node ID

Constants

The following table contains information for the field UpdatedFieldBits. You can combine any number of settings in this bit mask:

Constants | Changed Argument in Server StatusChange message
--- | ---
SK_STATUS_CHANGE | Status
SK_SYSTEMTYPE_CHANGE | SystemType
SK_MATRIXSIDE_CHANGE | MatrixSide
SK_MATRIXSTATE_CHANGE | MatrixState
SK_ADJMATRIXSTATE_CHANGE | AdjMatrixState
SK_STATUSBITS_CHANGE | StatusBits
SK_LOGICALNODE_CHANGE | LogicalNode

Local Area Network
Connection between nodes, physical connectivity
The condition of a component at a given instant. The current "context" of a PPL object, such as Idle, Seizing, Answered. In PPL files, a State is represented by a circle.
The point in the Excel platform where a DS0 connects to a network. Also known as a "socket."
A computer, attached to the Excel platform through an RS-232 or Ethernet link, from which you run the telecommunications application that controls the Excel platform.