Riferimento Lingua del Tivoli Service Desk 6.0 Developer's Toolkit Script
Ritorna alla pagina principale
NetAccept associa l'handler degli eventi specifico di una connessione e i dati di istanza con una connessione precedentemente gestita dall'handler degli eventi NetListen.
FUNCTION NetAccept (VAL hndlHost: NETCONNECTION, EventHandler {InstanceData} :EVENT, ): INTEGER:
Nome dell'argomento | Descrizione |
hndlHost | L'handle per la connessione. E' possibile utilizzare questa handle nelle chiamate di SendMessage e PostMessage per comunicare con un host. E' necessario che sia servito da un handler degli eventi NetListen per essere utilizzato in una chiamata di NetAccept. |
EventHandler | Elabora messaggi dal server. |
Tutte le connessioni servite dagli handler degli eventi NetListen condividono la stessa copia dei dati d'istanza definita per l'handler degli eventi NetListen. E' possibile associare una serie specifica di dati di istanza con una connessione NetListen aperta chiamando l'istruzione NetAccept per la connessione.
Nota: E' possibile chiamare NetAccept solo per una connessione NetListen e solo dalla propria handle.
I dati d'istanza associati alla connessione non vengono utilizzati con altre connessioni aperte o che possono essere aperte in seguito per l'handler degli eventi NetListen. Dopo aver chiamato NetAccept, la connessione viene modificata. Tutte le richieste per lo stesso host o servizio vengono indirizzate al nuovo handler degli eventi.
Quando viene chiamato NetAccept per supporre una connessione servita da NetListen, l'handler degli eventi inoltrato a NetAccept riceve un $MsgCreate per creare i propri dati di istanza. (Un handler degli eventi NetListen ha aperto la connessione prima della chiamata di NetAccept.)
Un handler degli eventi NetAccept effettua quanto segue:
I codici di ritorno derivano, generalmente, dalla macchina locale, se non diversamente specificato.
Codice di ritorno | Descrizione |
1 | Esito positivo |
-1 | BAD_HANDLE L'handle NetConnection non si riferisce a una handle valida. E' possibile inviare questo codice di ritorno se il processo del server è stato arrestato e riavviato da quando è stata stabilita la connessione. Questo codice di ritorno può derivare dalla macchina locale o da quella remota. |
-2 | UNKNOWN_VALUE E' stato utilizzato un parametro con un valore sconosciuto per una chiamata che richiede che il parametro abbia un valore noto. |
-3 | NO_MEMORY Non è disponibile memoria sufficiente a completare l'operazione. |
-4 | NO_CREATE E' stato impossibile creare una connessione. Questo codice di ritorno può provenire da una macchina remota o da una locale al livello di rete o del sistema operativo. Esso si applica anche ad altri oggetti di sistema richiesti dal server. NetRegister restituisce questo messaggio se si tenta di avviare un secondo server Tivoli Script sulla stessa porta. |
-5 | INVALID_TYPE Esistono tre messaggi designati a trasferire i dati attraverso una rete. $MsgNetInteger, $MsgNetReal e $MsgNetString accettano solo un certo tipo di dati. Viene visualizzato questo codice di ritorno se viene inoltrato un argomento non valido a un'istruzione SendMessage o PostMessage. |
-10 | OS_CALL_FAILED La chiamata ha avuto esito negativo al livello del sistema operativo. E' possibile che si verifichi ciò a causa di una configurazione non corretta o di risorse inadeguate. |
-12 | ERROR_BAD_MSG L'istruzione SendMessage o PostMessage è stata chiamata con un messaggio non supportato dalle istruzioni NETx (o un messaggio $MsgUser + n definito dall'utente da utilizzare specificamente con le istruzioni NETx). |
-13 | HOST_UNREACHABLE E' stato impossibile raggiungere il server richiesto. Il server non è attivo o non esiste nessun instradamento per il server o nessun handler degli eventi NetListen o NetRegister in esecuzione sul server. |
-15 | RESOURCE_LOCK Un'altra connessione sta utilizzando le risorse condivise necessarie per servire la chiamata. Questa restituzione si verifica se il sistema è sovraccarico. |
-16 | SERVICE_NOT_SUPPORTED Il server non supporta il servizio richiesto. |
-17 | NO_CONNECTION Non esiste una connessione valida associata all'handle. |
-18 | BAD PORT E' stato impossibile trasformare la parte relativa alla porta di una stringa di servizio in una porta o servizio validi. |
NetClose chiude una connessione.
FUNCTION NetClose (VAL hndlHost: NETCONNECTION ): INTEGER:
Argomento | Descrizione |
hndlHost | L'handle per la connessione |
Prima che i dati di istanza vengano distrutti, l'handler degli eventi per la connessione riceve un messaggio $MsgDestroy.
Nota: Se la connessione viene servita da un handler degli eventi NetListen, i dati di istanza non vengono distrutti.
Quando il client inizia una chiusura, NetClose chiude la connessione dal lato del client. Il server rileva la connessione chiusa e invia all'handler degli eventi della connessione un messaggio $MsgNetClose.
Il server distrugge tutti i dati di istanza associati alla connessione prima di chiuderla.
NetConnect stabilisce una connessione tra due macchine in rete.
NetConnect dispone di due formati di sintassi: client e peer-to-peer. Il formato principale (elencato come variazione client/server), viene utilizzato per aprire connessioni nelle architetture client o peer-to-peer.
Quella che segue è la sintassi client.
FUNCTION NetConnect(REF hndlHost: NETCONNECTION, VAL hostName: STRING, VAL service: STRING ): INTEGER;
Quella che segue è la sintassi peer-to-peer.
FUNCTION NetConnect( VAL hndlHost: NETCONNECTION ): INTEGER;
Nota: Peer-to-peer rappresenta una scorciatoia per la creazione di una connessione di ritorno.
Nome dell'argomento | Descrizione |
hndlHost | L'handle per il server. Utilizzare questa handle nelle chiamate di SendMessage e PostMessage per comunicare con il server. Se esiste già un'handle per la coppia host/service, chiamando NetConnect viene restituito quell'handle. Se si utilizza il formato peer-to-peer, l'handle viene inizializzato per la connessione di ritorno. |
hostName | Il nome o l'IP del server desiderato. |
service | Il nome di un servizio specifico che il client richiede al server. Se si specifica il nome del servizio come una stringa di lunghezza zero o $Unknown, il
server inquiry un servizio carattere jolly. (Il nome servizio può essere lungo fino a 256 caratteri.) Se non viene trovato il servizio sul server, quest'ultimo tenta di mettere in corrispondenza la richiesta del servizio con un servizio carattere jolly o con un servizio generico (uno registrato con un handler degli eventi NetListen). E' possibile accodare alla stringa di servizio un numero di porta per la macchina remota nella forma che segue: service : nnnn dove nnnn è un numero di porta TCP/IP. Altrimenti, la forma è: service : name dove name è un nome servizio TCP/IP. |
Se viene chiamato NetConnect su un'handle associata a una connessione esistente, NetConnect non riapre la connessione, ma verifica che quanto segue sia vero:
SourceName : Port
Il servizio di default è ASENET/TCP. La porta di default è 5005.
Restituisce l'indirizzo remoto associato a una connessione attiva
FUNCTION NetGetAddress( VAL handle : NETCONNECTION ) : STRING;
Nome dell'argomento | Descrizione |
handle | L'handle della connessione attiva |
Restituisce unknown all'errore o se la connessione non è attiva.
NetGetHostName restituisce il nome (o l'ID della macchina) del server associato a una connessione quando viene chiamato su un client. NetGetHostName restituisce il nome del client quando viene chiamato sul server.
FUNCTION NetGetHostName( VAL hndlHost: NETCONNECTION ): STRING:
Nome dell'argomento | Descrizione |
hndlHost | L'handle per il server |
E' possibile ottenere un'handle da una delle seguenti origini:
Codice di ritorno | Descrizione |
NetGetHostName | Restituisce il nome (o l'ID della macchina) del server associato all'handle |
Nota: Viene restituito $Unknown
se si verifica un errore o se non è associato nessun server a un'handle.
Restituisce l'indirizzo IP della macchina locale come riportato dal metodo di risoluzione del nome IP standard (generalmente il DNS o il file dell'host).
FUNCTION NetGetLocalAddress : STRING;
Se la configurazione di rete ha delle discrepanze, è possibile che questa funzione non riporti l'indirizzo configurato per la macchina. Se l'host dispone di più indirizzi, riporta quello noto al DNS o al file dell'host.
Restituisce unknown all'errore.
NetGetService restituisce la stringa del nome del servizio di rete associato a una connessione.
FUNCTION NetGetService ( VAL hndlHost: NETCONNECTION ): STRING:
Nome dell'argomento | Descrizione |
hndlHost | L'handle per il server |
E' possibile ottenere l'handle da un NetConnect o dal parametro $Handle per un handler degli eventi servito da NetListen, NetAccept o NetRegister. (NetGetService non restituisce la parte relativa alla porta di una specifica del servizio.)
Codice di ritorno | Descrizione |
NetGetService | Restituisce il nome del servizio associato all'handle |
Nota: Viene restituito $Unknown
se si verifica un errore o se non è associato nessun server a un'handle.
NetListen registra un handler degli eventi generico per elaborare richieste provenienti dai client.
FUNCTION NetListen( EventHandler EVENT): INTEGER:
Nome dell'argomento | Descrizione |
EventHandler | Un handler degli eventi di tipo NetConnection che elabora richieste provenienti da un client |
Richieste servizio
Un handler degli eventi NetListen riceve richieste di servizi se non esiste nessun servizio carattere jolly o NetRegister corrispondente. Una seconda chiamata di NetListen sostituisce l'handler degli eventi e i dati di istanza con nuovi dati di istanza.
Ogni volta che viene aperta una connessione per l'handler degli eventi NetListen, viene inviato un $MsgNetConnect all'handler degli eventi NetListen.
Un handler degli eventi NetListen dispone di una serie di dati di istanza condivisi per tutte le connessioni aperte per esso. L'handler degli eventi riceve un messaggio $MsgCreate quando viene registrato e un messaggio $MsgDestroy quando viene annullata la registrazione.
Le chiamate dell'handler degli eventi NetListen forniscono un'handle al client in $Handle e il messaggio in $Event.
Quando viene chiusa una connessione gestita da un handler degli eventi NetListen, l'handler degli eventi NetListen riceve un $MsgNetClose per quella connessione.
NetLoopBack invia un messaggio a un handler degli eventi locale che serve una connessione a una macchina remota.
FUNCTION NetLoopBack (VAL hndlHost NETCONNECTION VAL message: INTEGER, ANY ... ): INTEGER:
Nome dell'argomento | Descrizione |
hndlHost | Un'handle per un server. E' necessario che l'handle sia designata per una connessione aperta con una macchina remota. |
SendMessage
NetRegister registra una porta origine dell'handler degli eventi che accetta connessioni dai client di rete. Diversamente da NetListen, NetRegister può eseguire contemporaneamente più handler degli eventi su un server.
FUNCTION NetRegister(EventHandler EVENT, VAL service STRING ): INTEGER:
Nome dell'argomento | Descrizione |
EventHandler | Elabora messaggi provenienti dal client. |
service | Il nome del servizio che verrà fornito dal server. I nomi servizio possono essere lunghi fino a 255 caratteri. E' possibile accodare alla stringa di servizio un numero di porta per la macchina remota nella forma che segue: service : nnnn dove nnnn è un numero di porta TCP/IP. Altrimenti, la forma è: service : name dove name è un nome servizio TCP/IP. |
Quando si registra un handler degli eventi, specificare il nome del servizio da esso fornito. Se si registra il servizio come una stringa di lunghezza zero o $Unknown, l'handler degli eventi può elaborare ogni servizio richiesto.
Quando si registra un handler degli eventi, è anche possibile associare a esso i dati di istanza. Questi dati di istanza vengono inizializzati per la connessione quando questa viene aperta. (Specificare la porta come parte del servizio consente al processo del server di eseguire su una sola macchina.)
Abilita la traccia di rete. Generalmente è di ausilio solo per eseguire il debug di problemi dell'applicazione.
Nota: E' possibile utilizzare con NetTrace un filtro facoltativo che consente di specificare di quale tipo di messaggi tenere traccia invece di riceverli tutti. (Ad esempio, è possibile tenere traccia dei soli messaggi di errore). La sintassi facoltativa viene visualizzata dopo quella standard.
FUNCTION NetTrace( VAL traceFile : STRING ) : INTEGER;
Function NetTrace( VAL fileName : STRING VAL flags : STRING ): INTEGER;
Nome dell'argomento | Descrizione |
traceFile | Il nome del file su cui scrivere i dati di traccia. |
fileName | Il nome del file su cui scrivere i dati di traccia filtrati. |
flags | Controlla quali dati di traccia vengono scritti. Gli indicatori (flags) possono essere i seguenti:
|
Può essere prodotta una grande quantità di dati.
NetTrace supporta l'utilizzo di unicode che riconosce la codifica del carattere a doppio byte nelle lingue asiatiche. La variabile di ambiente è:
SAI_NET_USE_UNICODE
Questa variabile è disattiva per default.
Riferimento Lingua del Tivoli Service Desk 6.0 Developer's Toolkit Script
Ritorna alla pagina principale