Skip to content

test

Yep — this one has a very specific likely problem, and the customer's additional information is actually pointing in the right direction.

The key is that there are two completely different ways the IMS3000 can communicate with a JNIOR:

  1. JNIOR Protocol on port 9200 — the normal built-in JNIOR protocol.
  2. CinemaServerClient — part of the Cinema application, which can listen on a configurable TCP port and accept commands like run MASK_FLAT\r\n.

Those two should not be mixed together.

What I think is happening⚓︎

If the IMS3000 device is configured for TCP port 9200 and is sending:

run MASK_FLAT\r\n

then it is not using the JNIOR protocol. It's trying to talk to the CinemaServerClient.

And the customer's suspicion about Method is only partly correct.

For TCP, Method should not be set to TCP. The documented settings are:

  • Method = disabled or Serial
  • TcpPort = <TCP port number>

So for an Ethernet connection, the important setting is:

AppData/Cinema/CinemaServerClient/TcpPort = 9200

The Method setting is specifically for enabling the serial connection. INTEG's documentation explicitly says the Ethernet connection is enabled by putting a valid port number in TcpPort.

https://jnior.com/configuring-the-cinemaserverclient-and-preshowclient/?clicked_tag=Preshow+Client&utm_source=chatgpt.com

But there's an even bigger clue⚓︎

The error:

Unable to listen on port 9200 for the Cinema Server Client

is extremely significant.

That means CinemaServerClient is trying to open TCP port 9200 and can't.

And port 9200 is already normally occupied by the JNIOR's built-in protocol server. The JNIOR documentation identifies 9200 as the default JniorServer/Port.

https://jnior.com/jnior/jnior_users_manual.html?utm_source=chatgpt.com

So I strongly suspect they have configured:

CinemaServerClient → TcpPort = 9200

while the JNIOR itself is already using:

JniorServer → Port = 9200

That's a port collision.

What I would have them do⚓︎

If the intention is to use the Cinema application and send run MASK_FLAT\r\n, I'd configure something like:

AppData/Cinema/CinemaServerClient/TcpPort = 5000

and leave:

JniorServer/Port = 9200

Then configure the IMS3000's Cinema Server Client connection to:

JNIOR IP:5000

The Cinema application documentation specifically describes using a separate TCP port for CinemaServerClient, and even gives 9600 as an example.

configuring-the-cinemaserverclient-and-preshowclient

The command itself is correct:

run MASK_FLAT\r\n

Cinema's default incoming termination string is \r\n, and run <macro name>\r\n is the documented format for executing a macro.

https://jnior.com/sending-commands-to-a-jnior-to-execute-macros/?clicked_tag=Cinema+Server+Client&utm_source=chatgpt.com

One other thing I'd check⚓︎

Have them run:

netstat

from the JNIOR console.

That will tell us what is actually listening on 9200 and whether CinemaServerClient successfully opened its configured port. INTEG specifically recommends netstat for diagnosing these connections.

So my diagnosis would be:

Don't set Method to TCP. Set TcpPort to the port the IMS3000 will connect to, and don't use 9200 if the JNIOR protocol is already listening there.

If this is an actual support ticket you're working on, I'd be comfortable responding to the customer along those lines, but I'd probably ask for one screenshot of the CinemaServerClient registry and one netstat output before declaring it 100%.