question

Upvotes
Accepted
66 2 6 11

EMA reconnection

Team您好!

针对EMA 连接RTO,如果TCP连接断开,如何捕获状态报错,进而客户重新创建连接/new consumer ?

之前问过类似问题,后台同事总说参考ex330_Login_Streaming demo, 但客户还是不知道怎么捕获。

请协助!

如下是客户问题,如方便我可以组织会议讨论一下。

1.如何捕获tcp 断连异常

2.捕获断连异常如何重新连接

3.是否可以设置tcp重连次数

谢谢!

ema-api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

@gang.chen1 您好!不知道Jirapongse的回答是否已经可以帮助你取得进展。因为论坛本身可能没办法特别深入,如果您觉得仍然需要专家的支持,可能寻找产品的support团队比较适合。 目前是否有相应的dev/support人员在中国这边还不清楚。我查询到EMA的负责人是Vasavi Lavendel,要不要联系她获取更多信息呢?

Upvote
Accepted
78.8k 250 52 74

@gang.chen1

You need to add the following code into ex450_MP_QueryServiceDiscovery to get the login status messages.

            LoginReq loginReq = EmaFactory.Domain.createLoginReq();
            consumer.registerClient(loginReq.message(), appClient);

1657765119891.png

Then, it will get the login status when the channel is down and up.

StatusMsg
    streamId="1"
    domain="Login Domain"
    state="Open / Suspect / None / 'channel down'"
    name="..."
    nameType="1"
StatusMsgEnd
...
...
StatusMsg
    streamId="1"
    domain="Login Domain"
    state="Open / Ok / None / 'channel up'"
    name="..."
    nameType="1"
StatusMsgEnd



1657765119891.png (20.6 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
78.8k 250 52 74

@ gang.chen1

Typically, EMA can reconnect to the server when it detects the disconnection. The number of reconnection attempts can be configured via the EMA configuration (ReconnectAttemptLimit ).

1657620480565.pngHowever, there is an exception when EMA retrieves the login with the CLOSED status from the server. In this case, EMA will not reconnect to the server. To detect this scenario, please refer to the answer on this thread.



1657620480565.png (43.2 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thanks Jirapongse !

Could i ask a Chinese support and have a discussion meeting with client directly ?


Hi Jirapongse,

I am using demo ex450_MP_QueryServiceDiscovery to connect RTO directly, and disconnect the network manually. But I can't receive the login status(domain: 1)

Also I used demo series300.ex330_Login_Streaming to connect local TREP directly, and disconnect the network manually. In this senario, I can receive the login status(domain: 1) meta.txt

Do you know what caused it and how could i received login status under RTO?

thanks

meta.txt (37.7 KiB)

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.