# Enterprise Communication Interface (ECI)

## Open the IPC Connection (eci_connect)

### Description
Establishes an IPC connection to the specified partner process on the specified node with the specified IPC mechanism and initializes the IPC identifier.
| For connecting to the Java-Client or MFC-Client of Agile e6 the IPC connection type "tcpip" is available. On Windows additionally "windows_dde" is available to connect to the MFC-Client. For connecting to a server process of Agile e6 the IPC connection type "tcpip" is also used.
### Syntax
int eci_connect (edb_data_header *ipc_id, connection_types conn, char *node, char *resource, char *partner_id, char *my_id)
### Input Parameter
conn
Type of IPC Connection | value
tcpip | 1
windows_dde | 57
node
When conn = | Must be entered for "node":
1 | Host name where Java-Client, MFC-Client, or the Agile e6 process as service is running
57 | Irrelevant (any value)
Resource (identifier of IPC resource)
When conn = | Must be entered for "resource" :
1 | Socket number or socket name
57 | ECI-TOPIC of Agile e6 process
Alternate Syntax for Resource |
:h:<host>:t:<transportmode>:r:<resource> | host: hostname transportmode: {1|57} resource: {socketnumber|topic}
| Example: eci_connect(IpcId, 1, "nothing", ":h:myhost:t:57:r:eci_dde_loop", "agile", "CAD"); equivalent to eci_connect(IpcId, 57, "nothing", "eci_dde_loop", "agile", "CAD")
partner_id
Identifier of partner process, e.g. " Agile e6"
my_id
Identification of own process, e.g. "CAX". The value of this parameter must be unique (e.g. id+Hostname+Process-ID). The first 20 characters of the parameter must be different (if a second eci_connect call is executed).
### Output Parameter
#### ipc_id
Identifier of IPC connection
### Return value
    0
    connection established
    <> 0
    error during connect
### Example
Connect to MFC-Client of Agile e6. MFC-Client is running on host "max" and has been started with option "-p ECI-TOPIC:myTopic".
    edb_data_header *IpcId;
    eci_connect(IpcId, 57, "xyz", "myTopic", "agile","CAX");
Parameter | Explanation
conn = 57 | Operating system : Windows, Type of IPC connection: windows_dde
node = "xyz" | This IPC connection type does not require a value for "node" as the computer is managed by the DataView client.
resource = "myTopic" | Topic has value "myTopic". If no ECI-TOPIC is defined when starting Agile e6 with the option "-p" , "eci_dde_loop" is used as a default ECI-TOPIC.
partner_id = "agile" | Identification for Agile e6 process
my_id = "CAX" | Identification of own process