tigase / beagle-im Goto Github PK
View Code? Open in Web Editor NEW(M) XMPP client for macOS based on TigaseSwift XMPP library
License: GNU General Public License v3.0
(M) XMPP client for macOS based on TigaseSwift XMPP library
License: GNU General Public License v3.0
Describe the bug
Beagle reproducibly crashes after trying to insert an emoji in MUC. 100% reproducible.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Emoji should show in compose field.
Current behavior
Beagle crashes.
Additional context
Crash log is here (1 month): https://bin.disroot.org/?ede738e396106e33#33xmvAh6dGFJtFWSF4CixzsQVYiWYFq98Cj4oBYpNgZV
Is your feature request related to a problem? Please describe.
I've been getting into XMPP and I could send encrypted messages to people privately, but I see no option to do that for groups.
Describe the solution you'd like
Same feature for groups and private messages
Describe alternatives you've considered
I could use another app that supports it, but I don't know of any
Additional context
I don't know what I'm doing
Is your feature request related to a problem? Please describe.
Current app icons of BeagleIM, while showing a really nice dog, seem more like a placeholder than a proper icon that visually fits into the macOS ecosystem. The same applies to SiskinIM and more-less Stork. If you consider it, I propose to provide the below icons by the means of a Pull Request in each repo. No strings attached and no pressure. If you don't like it, disregard it.
Im using beagle.im and siskin.im on my devices. When I receive messages on one device, I can't see them on others. My college who's built our server infrastructure told me, all clients would operate with the same priority. I myself can't find any way, to activate different priorities.. Is there any way to do that within beagle.im?
Sometimes it is critized from non-English speaking users that Beagle/Siskin is only available in English and not e.g. in German. So I guess support for more languages (internalization) would be highly appreciated by many non-English speaking users.
Hi!
Can you please check whether or not BeagleIM & SiskinIM are affected of the OMEMO change as described in https://monal.im/blog/omemo-is-broken-in-general-across-the-ecosystem/ ? Daniel Gultsch from Conversations do seem to have made the change as well.
From what I understood of this discussion still using non-12byte IV will render OMEMO not working on those clients.
Describe the bug
CMD-Backspace should delete line, not close chat. It is a common idiom on macOS to delete the current line of text. BeagleIM should use CMD-w to close the current chat, not CMD-Backspace.
To Reproduce
Expected behavior
I expected that the text in entered disappeared.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Well, not sure if bug or feature, but when closing a chat tab (tested in fullscreen mode) has the effect that the next chat tab that moves up is missing the X. The X only appears when you move the mouse cursor around to another tab and then back again...
Using beta build b94 at the moment.
This video shows the problem (link valid until Aug. 31st.): https://silverhaze.org/s/D3x9fwY2nofmoo3
Is your feature request related to a problem? Please describe.
"I'm always frustrated when..." 😉 I have applications that are open all the time and take up a slot in the dock, even if I rarely interact with them or rely on notifications to do so.
Describe the solution you'd like
Add an option to the "Show system menu icon" to only show the system menu icon and hide the dock icon.
Describe alternatives you've considered
Deal with the status quo. It's not terrible, just a nice quality of life improvement.
Additional context
I will shortly be adding a feature request about the tray icon. I'll cross-link them when I get there.
Describe the bug
If I open a new chat window to a college then the chat history is not loaded. It works fine if I added MUC group. I tried it a couple of times now with changing the setting related with this but I get the same result.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
If you open the new chat window you expect to see the old chat history. But that is now empty. It feels that it doesn't catch the old chat history from the server.
Desktop (please complete the following information):
Hi!
When editing the profile settings (or at least wanting to do so) gives an error on ejabberd, although mod_version: {} is configured in ejabberd.yml:
Here's the output from XML console when clicking on "Edit":
<!-- 2020-07-09T19:21:49Z >>>> -->
<iq type='get' id='FC0EB0F3-2A97-4B62-BA22-BBEFF166B898'>
<vcard xmlns='urn:ietf:params:xml:ns:vcard-4.0'/>
</iq>
<!-- 2020-07-09T19:21:49Z <<<< -->
<iq from='[email protected]' type='error' id='FC0EB0F3-2A97-4B62-BA22-BBEFF166B898' to='[email protected]/2359849401574136431394243' xml:lang='en'>
<vcard xmlns='urn:ietf:params:xml:ns:vcard-4.0'/>
<error code='503' type='cancel'>
<service-unavailable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
<text xml:lang='en' xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>No module is handling this query</text>
</error>
</iq>
<!-- 2020-07-09T19:21:50Z <<<< -->
<r xmlns='urn:xmpp:sm:3'/>
<!-- 2020-07-09T19:21:50Z >>>> -->
<a h='37' xmlns='urn:xmpp:sm:3'/>
Currently BeagleIM has a combined scroll area for group chats and direct chats (plus from unknown).
If you have joined many group chats, the direct chats will be moved out of sight and you will not be aware of new incoming personal chat messages.
When there would be two independent scroll areas on the left for group chats and direct chats this would improve the situation significantly: the most active chats would be moved on top of the respective scroll areas and you would have new messages for both within your sight.
Is your feature request related to a problem? Please describe.
I've been trying XMPP and beagle looks like the only viable solution. It seems like XMPP applications are supposed to allow their users to update their account's password but I couldn't find how to do it in beagle.
Describe the solution you'd like
A tab in the account setup view for credentials
Describe alternatives you've considered
Not using beagle, not really viable on macos
Additional context
I don't know what I'm doing, I might be missing something.
Is your feature request related to a problem? Please describe.
Lack of support for OTR makes it impossible for Beagle to establish encrypted chats with clients that don't support OMEMO, e.g. mcabber.
Describe the solution you'd like
I'd like for Beagle to support OTR.
Describe alternatives you've considered
It seems like the only alternative is to ask all the contacts to upgrade to a client that supports OMEMO. That's hardly workable.
Where can i download older version of Beagle IM (3.4, 3.5) for mac os? Currently on apple store available app is 3.7, which is compatible with OS 10.14 and above. I'm running 10.13, and can't go any higher with this device.
Thanks
Hello!
We have some trouble with BeagleIM and the Openfire server we use at least since we updated.
We hade some chat-rooms disappearing in Openfire. They appeared to BeagleIM as "locked".
Don't know if anyone tried removing (the "static" / on the server setup) chat-rooms from BeagleIM (you can remove them using the X and add them again without trouble now) but maybe not with the other built-in "remove" method - I didn't try that.
After setting the missing chat-rooms up again we can see/use the chat-rooms again but BeagleIM quits frequently when sending a message to a chat-room. After starting BeagleIM again the message looks sent (I didn't verify/try this).
We have a very low degree of security in use - we only use it on the LAN.
Any suggestions or "fixed" newer version of BeagleIM "in the works"?
Best regards
Is your feature request related to a problem? Please describe.
Finding XMPP contacts can be problematic. There is no central directory of XMPP users (which is good!), but how to know if someone you know has an XMPP account?
Describe the solution you'd like
On Mac you can add information about social networks to your contacts in Contacts.app. XMPP is one of the options there. Of course this would only help with contacts where you already know the XMPP address. So, make it also an option to lookup mail addresses and check if there is an _xmpp-client._tcp.domain.tld or _xmpp-server._tcp.domain.tld, maybe on startup or in settings page as a button "check addressbook".
If a new XMPP contact has been found, ask the user to add it to roster/addressbook as XMPP address or dismiss it.
Describe the bug
Hard crash when viewing a received message due to unhandled permissions error on macOS 11.0b (20A5354i)
To Reproduce
Steps to reproduce the behavior:
Expected behavior
See the message
Desktop (please complete the following information):
Additional context
Here's the relevant part from the Problem Report generated by Apple:
Process: BeagleIM [3387]
Path: /Applications/BeagleIM.app/Contents/MacOS/BeagleIM
Identifier: org.tigase.messenger.BeagleIM
Version: 4.0 (103)
App Item ID: 1445349494
App External ID: 837575887
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: BeagleIM [3387]
User ID: 501
Date/Time: 2020-09-05 15:32:23.025 +0200
OS Version: Mac OS X 10.16 (20A5354i)
Report Version: 12
Bridge OS Version: 5.0 (18P50358b)
Anonymous UUID: 338EB067-441C-5267-6EF3-151D2A5F0309
Sleep/Wake UUID: 1C278FD8-2249-4C9D-A4FA-A8A8F108E61E
Time Awake Since Boot: 2900 seconds
Time Since Wake: 1000 seconds
System Integrity Protection: enabled
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Signal: Illegal instruction: 4
Termination Reason: Namespace SIGNAL, Code 0x4
Terminating Process: exc handler [3387]
Application Specific Information:
Fatal error: 'try!' expression unexpectedly raised an error: Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “org.tigase.messenger.BeagleIM” in the folder “Application Scripts”." UserInfo={NSFilePath=/Users/shibco/Library/Application Scripts/org.tigase.messenger.BeagleIM, NSUnderlyingError=0x6000035c5980 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}}: file /Users/andrzej/Development/xcode/BeagleIM/BeagleIM/utils/ScriptsManager.swift, line 35
Can you update the XEP-0384: OMEMO Encryption support to 0.4.0+?
And XEP-0454: OMEMO Media sharing:
Diff Tool:
PS: Not sure that 0.3.0 was complete before:
Is your feature request related to a problem? Please describe.
Currently, when writing a message and deciding to make it a reply, actual quote is inserted after typed message (which could be middle of the sentence)
Describe the solution you'd like
It would be better to insert said quote before typed text: it maintains normal reading flow and allows for continuation of writing.
Describe the bug
There is a field in the account settings that's supposed to get fingerprints of keys from other devices, but it doesn't seem to populate.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The OMEMO keys get automatically populated or at least there is a way to add them manually.
Desktop (please complete the following information):
Additional context
I don't know what I'm doing still.
Is your feature request related to a problem? Please describe.
I'm always frustrated when I have 2+ monitors and the tray icons in the inactive monitors are not vector-based image masks. These means both:
The inactive monitors' tray icons are dimmed.
The tray icons are just an alpha layer (a mask) without any bit-depth.
Compare Beagle's current state on the left to the other icons:
Describe the solution you'd like
Can you make a version of the beagle face, ideally without the neck, as a vector mask for the tray?
Apple's design guidelines for custom icons mention "template images:"
Consider creating icons as template images. A template image is a monochromatic image with transparency, anti-aliasing, and no drop shadow that uses a mask to define its shape. Template images automatically receive the appropriate appearance—including coloring, highlighting, and vibrancy—based on the context and user interactions. A variety of interface elements support template images, including buttons, segmented controls, sidebars, and toolbars.
Describe alternatives you've considered
I'm just going to leave the tray icon off until this is changed.
Additional context
This pairs really well with #9 for people who want to suppress the dock icon.
Currently BeagleIM starts with Chats window as default. By pressing cmd+2 keys you can open the Contacts window. This always opens a new window with default placement.
I'm running Beagle mostly in full screen mode. When opening the contacts window, Beagle opens a new full screen window. I need to reduce the contacts window then, so it moves back to main desktop screen. There it always open in a default position and size and I need to adapt size and position to where I would like it to stay.
Additionally, some people (like parents) might be used to have the contacts window open. Their main focus might be not in having multiple chats open, but see if their contacts are online or not. For those it would be more convenient to also remember which windows were open when quitting Beagle and reopen them again...
This FR might be similar to #15
Describe the bug
Crashes when two group chats from two different servers have the same room name. I'm not talking about the same JID, but the description ("Room name"). In my case I'm in the Ops room on my company server, as well as the one for an open source project
To Reproduce
Expected behavior
It should not crash. As a workaround I renamed one of the rooms to have a different room name
Desktop (please complete the following information):
Is your feature request related to a problem? Please describe.
I don't use the Mac App Store for application management.
Describe the solution you'd like
Add your releases to Homebrew's brew cask
listing. There is a very straightforward sample in the instructions for how to add a cask.
Describe alternatives you've considered
It sounds a little silly, but I only made an account for the App Store for this app. It took 6 months of dithering to decide it was probably worth it. It's conceivable that others have the same roadblock to use.
It would be nice if I could capture some graphical object in the clipboard (e.g., by doing a screen capture) and paste it into Beagle (and have it automatically, say, create a temporary file and upload it to the conversation).
This functionality may be a subset of that requested in #41
Whenever I try to open/join ANY group chat on my server my client suddenly crashes out of nowhere.
OS: MacOS 10.15.5; Device: MBP 16
Well, title says it all... it would nice when Beagle/Siskin would integrate with Apples "Share" API, so that you can easily share things via XMPP.
(From: https://chaos.social/@zerok/103448847632962816)
A simple way to export a complete chatlog would also be extremely high on my list.
I suspect I'm just missing some UI setting. I'd like to turn off the
------
User session not found
notifications. At least stop showing a new message indicator for them. I'll be chatting with my wife, and then some time after we finish, I get a notification icon (1)
. I think she has sent me a new message, but instead Beagle is just telling me that she's disconnected.
After uploading my avatar pic it happens from time to time that the same pic does appear as the avatar for other people as well as for MUCs:
My impression is that this happens mostly when adding a new contact or MUC that has no own avatar pic uploaded, but not every time. So I guess it's hard to track this issue down...
Hi!
There seems to be a formatting issue in the sidebar when there are special chars occurring in chat window.
See screenshots:
Text is:
I do this:
`git pull && ./autogen.sh && make update && ./configure --enable-new-sql-schema --enable-pgsql --enable-sip --enable-stun --enable-user=ejabberd --enable-group=ejabberd --prefix=/usr/local && make -j $(nproc)`
_(adapt the configure part to your setup)_
Sometimes, depending on the special chars, the text in sidebars is not well readable, like very condensed and italic or similar like that.
Describe the bug
The Chats window includes a section header in the left, purple section called "Groupchats".
This is a bit jarring to a native English speaker; it would be more usual to make that "Group chats" with a space (so, two words).
I realise this is a very minor issue and that possibly I may have severe personality problems for this to bother me as much as it does.
To Reproduce
Expected behavior
Change section heading from "Groupchats" to "Group chats".
Desktop (please complete the following information):
Additional context
None.
Describe the bug
I am trying to build BeagleIM in Xcode using branch mix-new_chatslist but I encounter a flood of errors related to JingleModule and JingleManager.
To Reproduce
Steps to reproduce the behavior:
I tested it's possible to build BeagleIM by going a few commits back where JingleModule was not an issue, but I would like to be able to compile the latest state.
I got "There is no trusted device to send message to" when trying to send a message to contact without OMEMO.
Expected behavior
Message should be sent (maybe with warning or so)
Desktop (please complete the following information):
Hello,
As a replacement for iChat I#m using Beagle (3.6) and I’m very satisfied with it.
A small feature would improve my satisfaction…
When I start my Mac every day I have to click on the Beagle-app and hit Shift-2 to activate the contact-window.
I would please you to implement the feature that Beagle starts with all windows opened as when I shutdown the computer….
Or it would also be a solution if there is a setting in the preferences to define the windows which should be opened at startup
Tank a lot
Best regards
Stefan
Is your feature request related to a problem? Please describe.
/me goes to the shops
and it looks strange/me
is also supported by a number of other messaging platformsDescribe the solution you'd like
Implementation of XEP-0245 in Beagle and Siskin.
Describe alternatives you've considered
I considered the alternative of it not being implemented, this made me feel sad.
Additional context
We're discussing recommending Beagle IM as the macOS client for IETF virtual MUC meetings. It would be good to ensure continuity of features from previously recommended clients for macOS (Adium) and interoperability with other XMPP clients that other meeting attendees may be using on other platforms.
Please make nick completion also work with tab key instead of selection by starting @.
Many other clients do work that way.
Examples:
typing "woj" results in "Wojtek: " in the input line.
typing "a" cycles through available nicks starting with "a" and might result in second nick with "a" like "Andrzej: "
At least in BeagleIM that would be helpful. I don't know if this is desireable for mobile clients such as SiskinIM, though...
Are you planning an iPhone Support?
Is your feature request related to a problem? Please describe.
The client supports file upload, but it's tedious to have to browse from your home directory to it when you actually already have it at hand in your finder. It would be great if I could just drag and drop it onto the chat to upload it.
Describe the solution you'd like
When dragging a file onto the chat view, provide user feedback that the chat column is a drop target and when dropping the file, upload it. It could probably be refined so that dropping the file on a MUC or Contact in the sidebar uploads there instead of the currently selected chat session.
Describe alternatives you've considered
Additional context
N/A
Describe the bug
When no profile is returned - e.g. on a fresh Prosody account, the "Personal" tab will error with
Could not retrive current version from the server.
Server returned an error: undefined_condition
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Can submit vCard without one set up prior.
Desktop (please complete the following information):
I sometimes use XMPP to send a link or text to myself between devices. (This works in Beagle, but has small weird thing, where I am listed as "From unknown" in sidebar.) I tried doing this with sending a file as well, but I always get an error message:
I sent you an OMEMO encrypted message, but your client doesn't seem to support that. Find more information on https://conversations.im/omemo
Steps to reproduce the behavior:
Hi!
For me it seems as if BeagleIM just tries to connect to the first DNS SRV entry for _xmpp-client._tcp.domain.tld, that is: the one with the lowest priority, and not trying other entries, although they are listed in the result set of DNS query.
Below you can see the console output after starting BeagleIM 4.0b97. You can see the resolver result includes the entry for port 443 with priority 15 first. While Beagle was running, I changed DNS zone to have port 443 priority of 1. After that change was done Beagle was able to connect successfully.
I believe this is an error and Beagle should try other DNS entry than just the first one with lowest priority. Basically I want to have port 443 as a fallback port in case some restrictive firewalls are blocking standard XMPP ports 5222 and 5223.
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 6 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue DF8C938A-065F-4924-B411-3667F64D73F1>
srvName: _xmpp-client._tcp.domain.tld sdFd: 7 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue E7318D37-5375-4FDE-9974-8B1ECF96D838>
stopping for: _xmpp-client._tcp.domain.tld
stopping for: _xmpps-client._tcp.domain.tld
finished for: domain.tld
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
SocketConnector connecting to: jabber.domain2.tld 5222
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
SocketConnector stream event: HasSpaceAvailable
WriteBuffer sent 138 bytes 138 of 138
loaded 24 during initialization of the view
loaded 1 during initialization of the view
found cache directory: /Users/juergensmann.ingo/Library/Containers/org.tigase.messenger.BeagleIM/Data/Library/Caches/org.tigase.messenger.BeagleIM/avatars
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:31:50 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 5 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 25151115-7367-4A9D-8CB3-DFA783F0A184>
srvName: _xmpp-client._tcp.domain.tld sdFd: 8 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 2E305F95-8F7F-4B07-8567-8D09C29D9086>
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:32:19 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
starting for service: _xmpps-client._tcp. at: domain.tld
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 11 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue A07BF2E9-005F-46AE-B3F3-AED857681A73>
srvName: _xmpp-client._tcp.domain.tld sdFd: 12 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 68711B8F-3221-4B0E-B035-8AB93C3931C3>
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:32:49 +0000
mouse entered
mouse exited
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 15 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 15762817-E760-4F1F-B96F-D8F4E295D0AF>
srvName: _xmpp-client._tcp.domain.tld sdFd: 16 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 58457B84-1F6A-40F9-8A2E-9FB2FF408A32>
stopping for: _xmpp-client._tcp.domain.tld
stopping for: _xmpps-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
mouse entered
mouse exited
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:33:22 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 17 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 0BFD99A0-7F43-428D-AF4D-CDF3AC5FFE81>
srvName: _xmpp-client._tcp.domain.tld sdFd: 18 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue F38ABC37-957A-4AEA-86D5-A4806068D801>
stopping for: _xmpp-client._tcp.domain.tld
stopping for: _xmpps-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:33:59 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 19 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 5A3EF89A-35A0-4A98-A272-EDBF35000F24>
srvName: _xmpp-client._tcp.domain.tld sdFd: 20 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 8AE4C384-56F8-42E3-88A1-4AB274EB36A9>
stopping for: _xmpp-client._tcp.domain.tld
stopping for: _xmpps-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
SocketConnector stream event: HasSpaceAvailable
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:34:28 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpps-client._tcp. at: domain.tld
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 21 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 59A2C617-B040-4FEB-B30A-5003D265D5F8>
srvName: _xmpp-client._tcp.domain.tld sdFd: 22 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 02AC439F-728D-4B69-8F5C-B7ACB129D560>
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:35:11 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 15, target: turn2.domain.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true]
starting for service: _xmpps-client._tcp. at: domain.tld
SocketConnector connecting to: jabber.domain2.tld 5222
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 23 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue A91E73F7-747E-488A-BDAE-F7F5E2761AB9>
srvName: _xmpp-client._tcp.domain.tld sdFd: 24 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 6F0BD7F3-A17D-42D7-9DED-19E7E3F7AB2F>
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
connection state changed: connecting
SocketConnector setsockopt!
SocketConnector setsockopt done
SocketConnector inStream.hasBytesAvailable false
SocketConnector stream event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector stream event: EndEncountered
connection state changed: connected
SessionObject removing properties for scopes [TigaseSwift.SessionObject.Scope.stream]
XMPPClient connection stopped......
##### [email protected] - disconnected 2020-07-20 06:35:54 +0000
XMPPClient starting connection......
connection state changed: disconnected
SocketConnector connecting to server: domain.tld
DNSSrvResolverWithCache loaded DNS records for domain: domain.tld from cache [[port: 443, weight: 0, priority: 1, target: turn2.domain.tld, directTls: false, isValid: true], [port: 443, weight: 0, priority: 1, target: turn2.domain.tld, directTls: true, isValid: true], [port: 5222, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: false, isValid: true], [port: 5223, weight: 0, priority: 5, target: jabber.domain2.tld, directTls: true, isValid: true]]
SocketConnector got dns record to connect to: [port: 443, weight: 0, priority: 1, target: turn2.domain.tld, directTls: false, isValid: true]
starting for service: _xmpps-client._tcp. at: domain.tld
SocketConnector connecting to: turn2.domain.tld 443
starting for service: _xmpp-client._tcp. at: domain.tld
starting for service: _xmpps-client._tcp.domain.tld at: domain.tld
starting for service: _xmpp-client._tcp.domain.tld at: domain.tld
srvName: _xmpps-client._tcp.domain.tld sdFd: 25 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 643F6EB1-3822-4842-90E8-9D8E2B191D24>
srvName: _xmpp-client._tcp.domain.tld sdFd: 26 resolverQueue: <OS_dispatch_queue_serial: DnsSrvResolverQueue 616142E0-0C31-4CF8-9A95-01A181F9EB37>
stopping for: _xmpp-client._tcp.domain.tld
stopping for: _xmpps-client._tcp.domain.tld
finished for: domain.tld
dns resolution finished: success(TigaseSwift.XMPPSrvResult)
stopping for: _xmpps-client._tcp.domain.tld
stopping for: _xmpp-client._tcp.domain.tld
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
eam event: OpenCompleted
SocketConnector stream event: OpenCompleted
SocketConnector stream event: HasSpaceAvailable
SocketConnector starting new parser TigaseSwift.XMLParser
SocketConnector sending stanza: <stream:stream to='domain.tld' from='[email protected]' version='1.0' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>
WriteBuffer sent 138 bytes 138 of 138
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream started: ["": "jabber:clie SocketConnector stream started: ["": "jabber:client", "from": "domain.tld", "xml:lang": "en", "id": "14422953608380912148", "stream": "http://etherx.jabber.org/streams", "to": "[email protected]", "version": "1.0"]
SocketSessionLogic processing stream features
SocketSessionLogic checking TLS
SocketSessionLogic finished processing stream features
SocketConnector sending stanza: <starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
WriteBuffer sent 51 bytes 51 of 51
SocketConnector stream event: HasSpaceAvailable
SocketConnector stream event: HasBytesAvailable
SocketConnector configuring TLS
Describe the bug
If you press COMMAND + BACKSPACE removes the whole chat from BeagleIM. You expected that it only removes the whole line that you typed.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
You expected that it removes the typed line instead of the whole chat.
Desktop (please complete the following information):
Hi!
Of course there is the small green bubble beside the contact avatar indicating if a user is available or not, but sometimes the user is outside of screen in sidebar or something like that.
For this is might be handy to have a "Notify me if contact is available again" option that displays a short notification on the screen that the contact is now available again and you can try to chat with him.
Of course there is also MAM and you could write the user in absense as well, but sometimes this might be not as reliable as trying to chat with the user when s/he is online again, especially when the user has multiple clients online and you cannot be confident about the implementation of MAM or the quality of push notifications.
Notication should be that way that it is from either yellow/red/grey status to green status, I think. For Beagle this could be added maybe to the (i) button and/or as a popup menu (right-click) in the contact list window or sidebar in main chat window. Makes only sense for non-MUC contacts, of course.
Describe the bug
I cannot open the Xcode project in the master
branch with Xcode 11.3 on macOS Mojave.
To Reproduce
Steps to reproduce the behavior:
master
branch.BeagleIM.xcodeproj
The project at '/Users/user/Development/beagle-im/BeagleIM.xcodeproj' cannot be opened because it is in a future Xcode project file format. Adjust the project format using a compatible version of Xcode to allow it to be opened by this version of Xcode.
Expected behavior
Xcode opens the project.
Desktop:
Additional context
Xcode 11.3 is the last version available for Mojave.
PS: I don't think the BeagleIM.xcodeproj/xcuserdata
folder should be checked in to Git.
SiskinIM support contact groups so that you can create groups like "Family", "Linux", or "Friends" and group your contacts within those contact groups, but Beagle lacks this feature, although I believe that users of Beagle would benefit also having this feature.
With contact groups additional feature could be implemented like group chats by clicking on contact group title and add/invite all contacts in that contact group into a newly created MUC.
Or group video calls by escalating the voice/video call to Jitsi Meet.
In enterprise environments ldap-based contact groups could be implemented, so you could have automatically add contacts to a group based on ldap group membership, e.g. "IT Business", "Finance", "Administration" or "Workers Council". If a new member is added to that LDAP group all other contacts "subscribed" to that contact group would automatically have that new member in that group contact list. Same when a member is removed from LDAP group.
This requires, of course, to have contact groups in contact list in the first place.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.