Isicancelenrollment(), Isicreateenrollment() – Echelon ISI User Manual
Page 128
ISI Programmer’s Guide
126
This function has no effect unless the ISI engine is running and the device is
either in device or domain acquisition mode.
IsiCancelEnrollment()
void IsiCancelEnrollment(void);
Cancels an open (pending or approved) enrollment. When used on a connection
host, a CSMX connection cancellation message is issued to cancel enrollment on
the connection members. When used on a device that has accepted, but not yet
implemented, an open enrollment, this causes the device to opt out of the
enrollment locally.
The function has no effect unless the ISI engine is running and in the pending or
approved state.
E
XAMPLE
The following example cancels enrollment on a connection host if the Connect
button is pushed prior to any devices accepting the invitation, or if the
Connect button is held down for an extended period:
when (io_changes(...)) {
switch(DeviceState) {
…
case isiApprovedHost:
if (Long) {
IsiCancelEnrollment();
} else {
IsiCreateEnrollment(Assembly);
}
break;
case isiApproved:
if (Long) {
IsiCancelEnrollment();
}
break;
…
}
}
IsiCreateEnrollment()
void IsiCreateEnrollment(unsigned
Assembly
);
Accepts a connection invitation. This function may be called after the application
has received and approved a CSMO open enrollment message. If the assembly is
not already in a connection, or if the assembly is in a connection and the device
supports direct connection removal, the connection will be created anew. If the
assembly is already in a connection, any previous connection information will be
replaced. This function must not be called with an assembly that is already in a
connection on a device that does not support direct connection removal.
On a connection host that has received at least one CSME enrollment acceptance
message, this command completes the enrollment and implements the connection
as new, replacing any previously existing enrollment information associated with
this assembly.