I'm frequently disconnected from the SIPE server, with the log, I see :
12:56:30: (GLib): (12:56:30) connection: Connecting. gc = 0x10a788140 12:56:30: (Libpurple: connection) Connecting. gc = 0x10a788140 12:56:30: (GLib): (12:56:30) sipe: sipe_purple_login: username 'fabrice.bacchella@3ds.com,FA4@DSONE.3DS.COM' 12:56:30: (Libpurple: sipe) sipe_purple_login: username 'fabrice.bacchella@3ds.com,FA4@DSONE.3DS.COM' 12:56:30: (GLib): (12:56:30) sipe: sipe_core_allocate: SIPE version 1.18.2 signin_name 'fabrice.bacchella@3ds.com' 12:56:30: (Libpurple: sipe) sipe_core_allocate: SIPE version 1.18.2 signin_name 'fabrice.bacchella@3ds.com' 12:56:30: (GLib): (12:56:30) sipe: sipe_core_allocate: user 'fabrice.bacchella' domain '3ds.com' 12:56:30: (Libpurple: sipe) sipe_core_allocate: user 'fabrice.bacchella' domain '3ds.com' 12:56:30: Connecting: gc=0xa788140 (Connexion en cours) 1 / 2 12:56:30: (GLib): (12:56:30) sipe: sipe_core_connect: user specified SIP server eu-dcc-ocd01.dsone.3ds.com:5061 12:56:30: (Libpurple: sipe) sipe_core_connect: user specified SIP server eu-dcc-ocd01.dsone.3ds.com:5061 12:56:30: (GLib): (12:56:30) sipe: transport_connect - hostname: eu-dcc-ocd01.dsone.3ds.com port: 5061 12:56:30: (Libpurple: sipe) transport_connect - hostname: eu-dcc-ocd01.dsone.3ds.com port: 5061 12:56:30: (GLib): (12:56:30) sipe: using SSL 12:56:30: (Libpurple: sipe) using SSL 12:56:30: (GLib): (12:56:30) dnsquery: Performing DNS lookup for eu-dcc-ocd01.dsone.3ds.com 12:56:30: (Libpurple: dnsquery) Performing DNS lookup for eu-dcc-ocd01.dsone.3ds.com 12:56:30: <ESPurpleSIPEAccount:6e571e0 39>:fabrice.bacchella@3ds.com: Updating status for key: isOnline 12:56:30: ************ fabrice.bacchella@3ds.com --step-- 1
...
12:56:31: (GLib): (12:56:31) cdsa: receive failed (-9806): Connection reset by peer 12:56:31: (Libpurple: cdsa) receive failed (-9806): Connection reset by peer 12:56:31: (GLib): (12:56:31) sipe: Read error: Connection reset by peer (54) 12:56:31: (Libpurple: sipe) Read error: Connection reset by peer (54) 12:56:31: (GLib): (12:56:31) connection: Connection error on 0x10a788140 (reason: 0 description: Read error) 12:56:31: (Libpurple: connection) Connection error on 0x10a788140 (reason: 0 description: Read error) 12:56:31: Connection Disconnected: gc=a788140 (Read error) 12:56:31: <ESPurpleSIPEAccount:6e571e0 39>:fabrice.bacchella@3ds.com accountConnectionReportDisconnect: Read error 12:56:31: (GLib): (12:56:31) cdsa: receive failed (-9806): Undefined error: 0 12:56:31: (Libpurple: cdsa) receive failed (-9806): Undefined error: 0 12:56:31: (GLib): (12:56:31) sipe: Read error: Undefined error: 0 (0) 12:56:31: (Libpurple: sipe) Read error: Undefined error: 0 (0) 12:56:31: (GLib): (12:56:31) account: Disconnecting account fabrice.bacchella@3ds.com,FA4@DSONE.3DS.COM (0x108153540) 12:56:31: (Libpurple: account) Disconnecting account fabrice.bacchella@3ds.com,FA4@DSONE.3DS.COM (0x108153540) 12:56:31: (GLib): (12:56:31) connection: Disconnecting connection 0x10a788140 12:56:31: (Libpurple: connection) Disconnecting connection 0x10a788140 ... 12:56:31: (GLib): (12:56:31) sipe: De-register from server. Flushing outstanding messages. 12:56:31: (Libpurple: sipe) De-register from server. Flushing outstanding messages. 12:56:31: (GLib): (12:56:31) cdsa: send failed (-9806): Operation timed out 12:56:31: (Libpurple: cdsa) send failed (-9806): Operation timed out 12:56:31: (GLib): (12:56:31) sipe: Write error: Operation timed out (60) 12:56:31: (Libpurple: sipe) Write error: Operation timed out (60) 12:56:31: (GLib): (12:56:31) connection: Connection error on 0x10a788140 (reason: 0 description: Write error) 12:56:31: (Libpurple: connection) Connection error on 0x10a788140 (reason: 0 description: Write error) 12:56:31: Connection Disconnected: gc=a788140 (Write error) 12:56:31: <ESPurpleSIPEAccount:6e571e0 39>:fabrice.bacchella@3ds.com accountConnectionReportDisconnect: Read error 12:56:31: (GLib): (12:56:31) sipe: sipe_http_transport_free: destroying connection 'eu-dcc-ocs02.dsone.3ds.com:443' 12:56:31: (Libpurple: sipe) sipe_http_transport_free: destroying connection 'eu-dcc-ocs02.dsone.3ds.com:443' 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:8 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:8 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:7 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:7 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:6 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:6 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:5 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:5 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:4 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:4 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:3 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:3 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:2 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:2 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:1 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:1 after removal 12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:0 after removal 12:56:31: (Libpurple: sipe) SIP transactions count:0 after removal 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<+keepalive-timeout> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<+keepalive-timeout> 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<registration> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<registration> 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<+reauthentication> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<+reauthentication> 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<vnd-microsoft-roaming-contacts> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<vnd-microsoft-roaming-contacts> 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<vnd-microsoft-roaming-self> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<vnd-microsoft-roaming-self> 12:56:31: (GLib): (12:56:31) sipe: sipe_schedule_remove: action name=<presence><sip:fabrice.bacchella@3ds.com> 12:56:31: (Libpurple: sipe) sipe_schedule_remove: action name=<presence><sip:fabrice.bacchella@3ds.com> 12:56:31: (GLib): (12:56:31) sipe: sipe_purple_dns_query_cancel_all: entered 12:56:31: (Libpurple: sipe) sipe_purple_dns_query_cancel_all: entered 12:56:31: (GLib): (12:56:31) sipe: sipe_purple_transport_close_all: entered 12:56:31: (Libpurple: sipe) sipe_purple_transport_close_all: entered 12:56:31: Disconnected: gc=a788140 12:56:31: <ESPurpleSIPEAccount:6e571e0 39>:fabrice.bacchella@3ds.com: Telling the core we disconnected
The connexion is reset by peer, but latter seen as a timeout. But the server is alive anyway, there is other connection to it, like:
12:56:31: (GLib): (12:56:31) sipe: SIP transactions count:6 after addition 12:56:31: (Libpurple: sipe) SIP transactions count:6 after addition 12:56:31: (GLib): (12:56:31) sipe: MESSAGE START >>>>>>>>>> SIP - 2014-07-11T10:56:31.492059Z SUBSCRIBE sip:EU-DCC-OCS02.dsone.3ds.com:5061;transport=tls SIP/2.0 Via: SIP/2.0/tls 192.168.205.62:62071 From: <sip:fabrice.bacchella@3ds.com>;tag=4358537996;epid=a0d344820a02
Should'nt the sipe client try to reconnect ?
RTFFAQ
Anyway automatic reconnect is a UI feature which can't be controlled by a procol plugin.
Closing as INVALID
I don't complain about the reconnect feature. The plugin send the the disconnect message although every thing is working fine. It got ONE connection reset, that it latter erroneously see as a time out and decide that is should disconnect:
12:56:31: <ESPurpleSIPEAccount:6e571e0 39="">:fabrice.bacchella@3ds.com: Telling the core we disconnected
But why just don't retry it ? There is many good connection to the SIPE server after the failed one, so the the server is indeed alive.
Please read the libpurple architecture documentation.