I've set up the XMPP account in administration / notifications / publishers. The validation works and i can see that continua is logged in in the XMPP server console.
Under administration / notifications / subscriptions i've added a new subscription for "build contributors" of "all projects", selected all checkboxes and chose "XMPP" as publisher.
My user is in the group "build contributors".
In my user settings, i've set my XMPP name (only the name not the server syntax like name@server as in the administration for publishers).
I am still getting no messages. Did i forget something?
oh sorry, i was looking the private message area. the event log contains:
Background Monitor
The background process XMPP notification queue threw the following exception: System.InvalidOperationException: Client must be authenticated before sending messages. at jabber.client.JabberClient.Message(MessageType t, String to, String body) at Continua.Notification.Queues.XmppQueue.Monitor() at Continua.Shared.BackgroundMonitor.Run()
There doesn't seem to be any route in the code to get that particular error message. So to help figure out what is happening, we've added some extra debug logging and error handling. You can download a new build using one of the following links: Continua CI Server v1.0.0.2378 (64 bit) or Continua CI Server v1.0.0.2378 (32 bit)
Can you install this, enable debugging (http://wiki.finalbuilder.com/displa...gDebugging), start the build which should send the messages and then send a copy of log file to the support@finalbuilder.com ?
Can you also confirm whether you received a validation message via XMPP when you validated the publisher settings? You should have received a message saying "If you received this message, validation worked"
i’ve enabled to logging and i can see, that it seems the message and the user were mixed up:
[code]Medium: 12:21:17 [Debug] Creating Jabber client to send messageMedium: 12:21:17 [Debug] Creating Jabber client for XMPP id: BuildServer@192.168.100.31Medium: 12:21:17 [Debug] Created Jabber client for XMPP id: BuildServer@192.168.100.31. User is ‘buildserver’, Server is ‘192.168.100.31’, NetworkHost is ‘192.168.100.31’, Port is '192.168.100.31’Medium: 12:21:17 [Debug] Sending XMPP message ‘BuildServer@192.168.100.31’ to 'If you received this message, validation worked.'Medium: 12:21:17 [Debug] Client is not authenticated - reset manual reset eventMedium: 12:21:17 [Debug] Connecting clientMedium: 12:21:17 [Debug] Waiting for client to be authenticatedMedium: 12:21:17 [Debug] Connected to XMPP serverMedium: 12:21:17 [Debug] Number of async trigger checkers is 0Medium: 12:21:17 [Debug] Number of sync triggers is 1Medium: 12:21:17 [Debug] Executing sync trigger with name Nightly BuildMedium: 12:21:17 [Debug] Handling invalid certificate error with XMPP serverMedium: 12:21:17 [Debug] Authenticated with XMPP serverMedium: 12:21:17 [Debug] Sending XMPP message ‘BuildServer@192.168.100.31’ to ‘If you received this message, validation worked.’ using authenticated clientMedium: 12:21:17 [Debug] Disposing Jabber clientMedium: 12:21:17 [Debug] Disconnected from XMPP server[/code]
Yes, I'd put the variables the wrong way round in logging!
We can see from the log that Continua is authenticating, calling the Jabber client method to send the message and returning without any error being thrown. So it seems that there is something wrong either with the Jabber client code or your XMPP server set up. Is there anything in the XMPP server logs? It may be that the server requires that you send the message to a different user than the "from" user?. Can you try sending a message with this sender and receiver using another XMPP client.
hm i using OpenFire and currently, i can see only the following:
[code]at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandler.java:181) at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:194) at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:227) at org.jivesoftware.openfire.net.ClientStanzaHandler.processMessage(ClientStanzaHandler.java:107) at org.jivesoftware.openfire.net.StanzaHandler.processMessage(StanzaHandler.java:373) at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:80) at org.jivesoftware.openfire.MessageRouter.route(MessageRouter.java:113) at org.jivesoftware.openfire.MessageRouter.routingFailed(MessageRouter.java:198) java.lang.NullPointerException 2013.08.06 08:21:48 org.jivesoftware.openfire.nio.ConnectionHandler - Closing connection due to error while processing message: <message id=“JN_22” type=“chat”><body>Build Started : Care4: Trunk version 1088 (started by Christian Leh) finished with a status of StageAwaitingAgent</body></message> [/code]
so it seems the message is sent but not “correctly” or wathever.
if i use the servers hostname, the validation fails, but the log entries exist:
2013.08.07 01:00:21 org.jivesoftware.openfire.net.SocketReader - Closing session due to incorrect hostname in stream header. Host: 192.168.100.31. Connection: org.jivesoftware.openfire.net.SocketConnection@17779f2 socket: Socket[addr=/192.168.100.31,port=50776,localport=5269] session: null
after changing the IP to hostname, i get the following error through continua:
System.Net.Sockets.SocketException (0x80004005): Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte [fe80::a836:a592:e3ce:83fa%11]:5222 at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
(its german and means: connection refused by the remote host). well, even if i switch of the firewall, it doesn’t work. the IPv6 address is correct but maybe thats the problem?
Yes, it looks like IPv6 is the problem with the Jabber-net client that we are using. We'll look into this further. Meanwhile, can you try using name@ipAaddress for the Publisher and name@hostname in the user preferences? The ip address will then be used to connect to the server and the hostname used as the target for the message.
System.Net.Sockets.SocketException (0x80004005): Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte [::1]:5222 at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
hm ok. i switched on my monitor this morning, now i have some messages. so i launched a build manually and it seems to work now using: user@ip for publisher and user@host for users.