savoirfairelinux issueshttps://git.jami.net/groups/savoirfairelinux/-/issues2021-06-01T19:46:53Zhttps://git.jami.net/savoirfairelinux/jami-packaging/-/issues/97Add package repo for Debian Unstable on dl.jami.net2021-06-01T19:46:53ZAmin BandaliAdd package repo for Debian Unstable on dl.jami.netAmin BandaliAmin Bandalihttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/560Jenkins: fix ut_media_negotiation2021-05-31T17:55:12ZSébastien BlinJenkins: fix ut_media_negotiationhttps://git.jami.net/savoirfairelinux/jami-project/-/issues/819Cannot end SIP call to phone number started from context menu2020-03-25T19:30:31ZChristos LiapisCannot end SIP call to phone number started from context menuSee [cannot_hang_up.pdf](/uploads/e775df4ccad73f7994390eb0ef7bc41e/cannot_hang_up.pdf). In this case, the user has to delete the phone number (contact) or wait for the call to be answered. The button to end the call, which is shown when ...See [cannot_hang_up.pdf](/uploads/e775df4ccad73f7994390eb0ef7bc41e/cannot_hang_up.pdf). In this case, the user has to delete the phone number (contact) or wait for the call to be answered. The button to end the call, which is shown when the call is started using the phone icon near the upper right-hand corner of the Jami window, is missing when the user starts the call using the context menu.https://git.jami.net/savoirfairelinux/jami-project/-/issues/820Share screen without webcam of others users2020-12-15T21:11:31ZFrédéric RAVETIERShare screen without webcam of others usersHello,
At this time to share my screen I need to open video-conf with all the users.
If we are 4 users, the shared screen is very small.
I'd like to share my screen and I'd like that other users can see my screen in full screen.
And ...Hello,
At this time to share my screen I need to open video-conf with all the users.
If we are 4 users, the shared screen is very small.
I'd like to share my screen and I'd like that other users can see my screen in full screen.
And to spent less bandwidth I'd like to have only the voice of the people, not the video.
Thank you for your job!!https://git.jami.net/savoirfairelinux/jami-project/-/issues/821client-gnome fails to build.2020-06-30T19:50:48ZTiriftoclient-gnome fails to build.Just now I tried installing a new version of Jami with `make-ring.py`, following [the build instructions](https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Build-instructions) and opting for a global install. The whole p...Just now I tried installing a new version of Jami with `make-ring.py`, following [the build instructions](https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Build-instructions) and opting for a global install. The whole process failed at what I presume to be the part where it builds the client. (I wasn’t sure whether to report this here or at [jami-client-gnome](https://git.jami.net/savoirfairelinux/ring-client-gnome).)
I‘m running an up-to-date [Parabola GNU+Linux-libre](https://www.parabola.nu/) (derived from Arch). Jami is already installed on my system via this exact same method, and everything seemed to go fine when I was installing it last time. Here is the tail of the terminal output (errors were printed in French, which I don’t expect to be a problem, but I can try to reproduce in English if it is):
```
[ 80%] Building CXX object CMakeFiles/gnome-ring.dir/src/backends/edscontactbackend.cpp.o
[ 81%] Building CXX object CMakeFiles/gnome-ring.dir/src/native/pixbufmanipulator.cpp.o
Dans le fichier inclus depuis /usr/include/evolution-data-server/libedataserver/libedataserver.h:32,
depuis /usr/include/evolution-data-server/libebook/libebook.h:23,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.h:28,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:20:
/usr/include/evolution-data-server/libedataserver/e-flag.h:54:26: attention: « GTimeVal » est obsolète: Use 'GDateTime' instead [-Wdeprecated-declarations]
54 | GTimeVal *abs_time);
| ^
Dans le fichier inclus depuis /usr/include/glib-2.0/glib/galloca.h:32,
depuis /usr/include/glib-2.0/glib.h:30,
depuis /usr/include/evolution-data-server/libedataserver/e-cancellable-locks.h:31,
depuis /usr/include/evolution-data-server/libedataserver/libedataserver.h:23,
depuis /usr/include/evolution-data-server/libebook/libebook.h:23,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.h:28,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:20:
/usr/include/glib-2.0/glib/gtypes.h:545:26: note: déclaré ici
545 | typedef struct _GTimeVal GTimeVal GLIB_DEPRECATED_TYPE_IN_2_62_FOR(GDateTime);
| ^~~~~~~~
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp: Dans la fonction « void contacts_added(EBookClientView*, const GSList*, EdsContactBackend*) »:
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:225:57: attention: transtypage entre types de fonctions incompatibles de « void* (*)(gpointer) » {aka « void* (*)(void*) »} vers « GCopyFunc » {aka « void* (*)(const void*, void*) »} [-Wcast-function-type]
225 | g_slist_copy_deep((GSList *)objects, (GCopyFunc)g_object_ref, NULL ), &free_object_list);
| ^~~~~~~~~~~~
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp: Dans la fonction « void contacts_removed(EBookClientView*, const GSList*, EdsContactBackend*) »:
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:241:54: attention: transtypage entre types de fonctions incompatibles de « gchar* (*)(const gchar*) » {aka « char* (*)(const char*) »} vers « GCopyFunc » {aka « void* (*)(const void*, void*) »} [-Wcast-function-type]
241 | g_slist_copy_deep((GSList *)uids, (GCopyFunc)g_strdup, NULL ), &free_string_list);
| ^~~~~~~~
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp: Dans la fonction membre « bool EdsContactBackend::addNewPerson(Person*) »:
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:464:9: erreur: conversion invalide de « gchar** » {aka « char** »} vers « guint32 » {aka « unsigned int »} [-fpermissive]
464 | &uid,
| ^~~~
| |
| gchar** {aka char**}
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:465:25: erreur: ne peut convertir « std::unique_ptr<_GCancellable, void (&)(void*)>::pointer » {aka « _GCancellable* »} en « gchar** » {aka « char** »}
465 | cancellable_.get(),
| ~~~~~~~~~~~~~~~~^~
| |
| std::unique_ptr<_GCancellable, void (&)(void*)>::pointer {aka _GCancellable*}
Dans le fichier inclus depuis /usr/include/evolution-data-server/libebook/libebook.h:27,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.h:28,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:20:
/usr/include/evolution-data-server/libebook/e-book-client.h:133:16: note: initialisation de l'argument 4 de « gboolean e_book_client_add_contact_sync(EBookClient*, EContact*, guint32, gchar**, GCancellable*, GError**) »
133 | gchar **out_added_uid,
| ~~~~~~~~^~~~~~~~~~~~~
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp: Dans la fonction membre « bool EdsContactBackend::removePerson(const Person*) »:
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:497:25: erreur: conversion invalide de « std::unique_ptr<_GCancellable, void (&)(void*)>::pointer » {aka « _GCancellable* »} vers « guint32 » {aka « unsigned int »} [-fpermissive]
497 | cancellable_.get(),
| ~~~~~~~~~~~~~~~~^~
| |
| std::unique_ptr<_GCancellable, void (&)(void*)>::pointer {aka _GCancellable*}
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:498:9: erreur: ne peut convertir « GError** » {aka « _GError** »} en « GCancellable* » {aka « _GCancellable* »}
498 | &error
| ^~~~~~
| |
| GError** {aka _GError**}
Dans le fichier inclus depuis /usr/include/evolution-data-server/libebook/libebook.h:27,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.h:28,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:20:
/usr/include/evolution-data-server/libebook/e-book-client.h:216:22: note: initialisation de l'argument 4 de « gboolean e_book_client_remove_contact_by_uid_sync(EBookClient*, const gchar*, guint32, GCancellable*, GError**) »
216 | GCancellable *cancellable,
| ~~~~~~~~~~~~~~^~~~~~~~~~~
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp: Dans la fonction membre « bool EdsContactBackend::savePerson(const Person*) »:
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:529:25: erreur: conversion invalide de « std::unique_ptr<_GCancellable, void (&)(void*)>::pointer » {aka « _GCancellable* »} vers « guint32 » {aka « unsigned int »} [-fpermissive]
529 | cancellable_.get(),
| ~~~~~~~~~~~~~~~~^~
| |
| std::unique_ptr<_GCancellable, void (&)(void*)>::pointer {aka _GCancellable*}
/home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:530:9: erreur: ne peut convertir « GError** » {aka « _GError** »} en « GCancellable* » {aka « _GCancellable* »}
530 | &error
| ^~~~~~
| |
| GError** {aka _GError**}
Dans le fichier inclus depuis /usr/include/evolution-data-server/libebook/libebook.h:27,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.h:28,
depuis /home/tirifto/Téléchargements/ring-project/client-gnome/src/backends/edscontactbackend.cpp:20:
/usr/include/evolution-data-server/libebook/e-book-client.h:167:22: note: initialisation de l'argument 4 de « gboolean e_book_client_modify_contact_sync(EBookClient*, EContact*, guint32, GCancellable*, GError**) »
167 | GCancellable *cancellable,
| ~~~~~~~~~~~~~~^~~~~~~~~~~
make[2]: *** [CMakeFiles/gnome-ring.dir/build.make:523 : CMakeFiles/gnome-ring.dir/src/backends/edscontactbackend.cpp.o] Erreur 1
make[2]: *** Attente des tâches non terminées....
make[2] : on quitte le répertoire « /<path-to-bulid-directory>/ring-project/client-gnome/build-global »
make[1]: *** [CMakeFiles/Makefile2:237 : CMakeFiles/gnome-ring.dir/all] Erreur 2
make[1] : on quitte le répertoire « /<path-to-build-directory>/ring-project/client-gnome/build-global »
make: *** [Makefile:130 : all] Erreur 2
Traceback (most recent call last):
File "./make-ring.py", line 528, in <module>
main()
File "./make-ring.py", line 515, in main
run_install(parsed_args)
File "./make-ring.py", line 322, in run_install
return subprocess.run(["./scripts/install.sh"] + install_args, env=environ, check=True)
File "/usr/lib/python3.8/subprocess.py", line 512, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['./scripts/install.sh', '-p', '2', '-g', '-c', 'client-gnome']' returned non-zero exit status 2.
```https://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1133The "+" button is confusing2021-07-09T18:35:13ZKuba OrlikThe "+" button is confusingFirst of all, thank you for all your work on this important project! Now, there's one issue that stuck up to me in the GUI that I'd like to address
The "+" button above the contact doesn't have a clear purpose. When I send someone my Ja...First of all, thank you for all your work on this important project! Now, there's one issue that stuck up to me in the GUI that I'd like to address
The "+" button above the contact doesn't have a clear purpose. When I send someone my Jami nick, the instinct is often to press the "+" button (as one can assume it means "add new contact", hence the "+"), but then nothing happens - it looks like a bug then!
I'd suggest removing the button, because as far as I can tell its purpose is identical to just pressing "enter" when typing a usernamehttps://git.jami.net/savoirfairelinux/jami-project/-/issues/822Feature Request: Push To Talk Key & Open Mic Options2021-12-29T21:25:39ZtrymeoutFeature Request: Push To Talk Key & Open Mic OptionsA cool thing to add for voice and video calls would be the ability to set a push-to-talk key for desktop (Windows, Mac, Linux) and to allow an open mic option and to add settings to configure your mic. Similar to gaming VOIP apps like Te...A cool thing to add for voice and video calls would be the ability to set a push-to-talk key for desktop (Windows, Mac, Linux) and to allow an open mic option and to add settings to configure your mic. Similar to gaming VOIP apps like TeamSpeak and Mumble.
This will allow less noise during calls and will allow users to have more privacy features on their audio during a call.Backloghttps://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1134Username shows `(None)` when it should show `_mjog_`2020-03-25T08:15:04ZovariUsername shows `(None)` when it should show `_mjog_`A new contact created an account with `underscores` i.e. `_` in the Username.
The Username shows `(None)` in the information.
![image](/uploads/32fb176587805557cbad9baac25ec0f8/image.png)
Are underscores allowed in the username? **Yes...A new contact created an account with `underscores` i.e. `_` in the Username.
The Username shows `(None)` in the information.
![image](/uploads/32fb176587805557cbad9baac25ec0f8/image.png)
Are underscores allowed in the username? **Yes** <s>If not, should Jami check to ensure the username only contains valid characters before it is accepted in the `Name server`?</s>
> Usernames are checked by a regex to ensure some rules about their
> format:
>
> * Length must be between 3 and 32 characters
> * Those characters must be alphanumerical with underscore `_` being
> also accepted.
>
> https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Name-Server-Protocol#rules-on-name-formatting
Couldn't lookup in the Jami GNOME client<br>
![CouldnotLookup](/uploads/45bfd499e425fa47a8889ffb1114d0cd/CouldnotLookup.png)
It is shown in the name server at `http://ns.jami.net/name/_mjog_`. What is strange is that if you click on the following link http://ns.jami.net/name/_mjog_ the trailing underscore does not get copied into the webbrowser only the address http://ns.jami.net/name/_mjog opens.
Should usernames not be allowed to have trailing underscores? Should this also be added to the test of usernames?
What do you think?
Thank you
Jami built on 2020-03-16 23:13:23 UTC<br>
Linux Mint 19.3 Cinnamonhttps://git.jami.net/savoirfairelinux/jami-project/-/issues/823Incorrect invite IP on SIP call over VPN2022-11-11T16:29:18ZVicente MonroigIncorrect invite IP on SIP call over VPNMy test system is using Jami in Ubuntu accessing a FreePBX over L2TP/IPSec VPN. Registering extension works flawlessly, but when a call is started, invites are sent with the IP VPN box instead of client, so results in missed call.
I've ...My test system is using Jami in Ubuntu accessing a FreePBX over L2TP/IPSec VPN. Registering extension works flawlessly, but when a call is started, invites are sent with the IP VPN box instead of client, so results in missed call.
I've tested same network and VoIP box with Linphone resulting in good call, so I think there is something not working in Jami.
This is log from `/usr/lib/ring/dring -d -c`:
```
user@userPortatil:~$ /usr/lib/ring/dring -d -c
Jami Daemon 9.1.0, by Savoir-faire Linux 2004-2019
https://jami.net/
[Video support enabled]
[1584433298.376|21247|ringbufferpool.cpp:118 ] Ringbuffer created with id 'audiolayer_id'
[1584433298.491|21247|video_device.h :129 ] Default video settings: 960x540, 30 FPS
[1584433298.492|21247|manager.cpp :676 ] Not initialized
[1584433298.492|21247|manager.cpp :676 ] Not initialized
09:21:38.492 os_core_unix.c !pjlib 2.8-svn for POSIX initialized
[1584433298.492|21247|manager.cpp :738 ] Using PJSIP version 2.8-svn for x86_64-pc-linux-gnu
[1584433298.492|21247|manager.cpp :739 ] Using GnuTLS version 3.6.12
[1584433298.492|21247|manager.cpp :740 ] Using OpenDHT version 2.0.0
[1584433298.493|21247|manager.cpp :751 ] Configuration file path: /home/user/.config/jami/dring.yml
[1584433298.496|21247|accel.cpp :139 ] -- Starting encoding test for cuda with default device.
[AVHWDeviceContext @ 0x55bec3060b00] Cannot load libcuda.so.1
[AVHWDeviceContext @ 0x55bec3060b00] Could not dynamically load CUDA
[1584433298.497|21247|accel.cpp :102 ] Failed to create cuda device: -1313558101.
[1584433298.497|21247|accel.cpp :149 ] -- Init failed for cuda with default device.
[1584433298.497|21247|accel.cpp :153 ] -- Init encoding for cuda with device 0.
[AVHWDeviceContext @ 0x55bec3061040] Cannot load libcuda.so.1
[AVHWDeviceContext @ 0x55bec3061040] Could not dynamically load CUDA
[1584433298.497|21247|accel.cpp :102 ] Failed to create cuda device: -1313558101.
[1584433298.497|21247|accel.cpp :163 ] -- Init failed for cuda with device 0.
[1584433298.497|21247|accel.cpp :153 ] -- Init encoding for cuda with device 1.
[AVHWDeviceContext @ 0x55bec3061580] Cannot load libcuda.so.1
[AVHWDeviceContext @ 0x55bec3061580] Could not dynamically load CUDA
[1584433298.497|21247|accel.cpp :102 ] Failed to create cuda device: -1313558101.
[1584433298.497|21247|accel.cpp :163 ] -- Init failed for cuda with device 1.
[1584433298.497|21247|accel.cpp :153 ] -- Init encoding for cuda with device 2.
[AVHWDeviceContext @ 0x55bec3061ac0] Cannot load libcuda.so.1
[AVHWDeviceContext @ 0x55bec3061ac0] Could not dynamically load CUDA
[1584433298.498|21247|accel.cpp :102 ] Failed to create cuda device: -1313558101.
[1584433298.498|21247|accel.cpp :163 ] -- Init failed for cuda with device 2.
[1584433298.510|21247|accel.cpp :139 ] -- Starting encoding test for vaapi with default device.
[1584433298.513|21247|accel.cpp :114 ] Device type vaapi successfully created.
[1584433298.513|21247|accel.cpp :145 ] -- Init passed for vaapi with default device.
[1584433298.519|21247|system_codec_container.cpp:143 ] Found a usable accelerated H265/HEVC codec: vaapi, enabling.
[1584433298.520|21247|system_codec_container.cpp:181 ] Encoders found: H265 H264 VP8 MP4V-ES H263-1998 opus G722 speex speex speex PCMA PCMU
[1584433298.520|21247|system_codec_container.cpp:182 ] Decoders found: H265 H264 VP8 MP4V-ES H263-1998 opus G722 speex speex speex PCMA PCMU
[1584433298.520|21247|sipvoiplink.cpp :550 ] Using SIP nameserver: 192.168.0.10
[1584433298.520|21247|sipvoiplink.cpp :550 ] Using SIP nameserver: 127.0.0.53
[1584433298.520|21247|siptransport.cpp :188 ] SipTransportBroker@0x55bec3060db0
[1584433298.521|21247|sipvoiplink.cpp :641 ] SIPVoIPLink@0x55bec30604e0
[1584433298.521|21247|sipaccount.cpp :2191 ] All audio codecs disabled, enabling all
[1584433298.521|21247|sipaccount.cpp :2195 ] All video codecs disabled, enabling all
[1584433298.521|21251|sip_utils.cpp :203 ] Registered thread 0x7fd17bf564f0 (0x52FF)
[1584433298.524|21247|pupnp.cpp :111 ] PUPnP: Initialiazed on 192.168.1.107:0
[1584433298.525|21247|sipaccount.cpp :1678 ] Presence enabled for 63e40ec72311e5b1 : false.
[1584433298.529|21247|pulselayer.cpp :136 ] Waiting....
[1584433298.531|21264|pulselayer.cpp :136 ] Waiting....
[1584433298.532|21264|pulselayer.cpp :136 ] Waiting....
[1584433298.532|21264|pulselayer.cpp :140 ] Connection to PulseAudio server established
[1584433298.533|21264|pulselayer.cpp :169 ] Updating PulseAudio sink list
[1584433298.533|21264|pulselayer.cpp :185 ] Updating PulseAudio source list
[1584433298.533|21264|pulselayer.cpp :201 ] Updating PulseAudio server infos
[1584433298.534|21264|pulselayer.cpp :603 ] PulseAudio server info:
Server name: pulseaudio
Server version: 11.1
Default Sink alsa_output.pci-0000_00_1f.3.analog-stereo
Default Source alsa_input.pci-0000_00_1f.3.analog-stereo
Default Sample Specification: s16le 2ch 44100Hz
Default Channel Map: front-left,front-right
[1584433298.538|21252|nat_pmp.cpp :53 ] NAT-PMP: Initialized on gateway 192.168.1.1
[1584433298.578|21247|sipaccount.cpp :728 ] doRegister 192.168.0.212:5062
[1584433298.578|21247|sipaccount.cpp :733 ] UPnP: waiting for IGD to register SIP account
[1584433298.578|21247|upnp_context.cpp :289 ] UPnP: Trying to add mapping 62567:5060 UDP with no Internet Gateway Device available
[1584433298.578|21247|upnp_context.cpp :488 ] [upnp:controller@94277804156544] registering cb for mapping 62567:5060 UDP
[1584433299.578|21248|upnp_context.cpp :453 ] UPnPContext: Add mapping request for 62567:5060 UDP timed out
[1584433299.578|21248|sipaccount.cpp :704 ] [Account 63e40ec72311e5b1] Failed to open port 5060: registering SIP account anyways
[1584433299.578|21248|sipvoiplink.cpp :1218 ] try to resolve '192.168.0.212:5062' (port: 5062)
[1584433299.578|21248|sipaccount.cpp :825 ] Creating transport
[1584433299.578|21248|siptransport.cpp :340 ] Created UDP transport on address 0.0.0.0:5060
[1584433299.579|21248|siptransport.cpp :76 ] SipTransport@0x7fd13c001c50 {tr=0x7fd13c001428 {rc=2}}
[1584433300.524|21251|sipvoiplink.cpp :676 ] username = 202, server = 192.168.0.212, from = 192.168.0.212
[1584433300.524|21251|sipaccount.cpp :1723 ] Matching account id in request with username 202
[1584433300.567|21251|sipaccount.cpp :1872 ] IP address change detected for account 63e40ec72311e5b1 (192.168.100.156:5060 --> 192.168.0.10:62567). Updating registration (using method 2)
[1584433300.567|21251|sipaccount.cpp :1072 ] Contact overwritten
[1584433300.567|21251|message_engine.cpp:226 ] [Account 63e40ec72311e5b1] couldn't load messages from /home/user/.cache/jami/63e40ec72311e5b1/messages: basic_ios::clear: iostream error
[1584433300.568|21251|sipvoiplink.cpp :676 ] username = 202, server = 192.168.0.212, from = 192.168.0.212
[1584433300.568|21251|sipaccount.cpp :1723 ] Matching account id in request with username 202
[1584433300.585|21251|sipvoiplink.cpp :676 ] username = 202, server = 192.168.0.212, from = 192.168.0.212
[1584433300.585|21251|sipaccount.cpp :1723 ] Matching account id in request with username 202
[1584433304.173|21261|pupnp.cpp :275 ] PUPnP: Validating IGD candidate
UDN : uuid:20809696-105a-3721-e8b8-5078b3bf9c84
Name : UPNP IGD
Service Type : urn:schemas-upnp-org:service:WANIPConnection:1
Service ID : urn:upnp-org:serviceId:WANIPConn1
Base URL : http://192.168.1.254:52869
Location URL : http://192.168.1.254:52869/gatedesc.xml
control URL : http://192.168.1.254:52869/upnp/control/WANIPConn1
Event URL : http://192.168.1.254:52869/upnp/control/WANIPConn1
[1584433304.189|21261|pupnp.cpp :297 ] PUPnP: Found device with external IP 185.239.XXX.XXX
[1584433304.232|21261|upnp_context.cpp :214 ] UPnP: IGD with public IP 185.239.XXX.XXX was added to the list
[1584433304.232|21261|upnp_context.cpp :219 ] [upnp:controller@94277804156544] sending out request in cb queue for mapping 62567:5060 UDP
[1584433304.232|21261|pupnp.cpp :326 ] PUPnP: Attempting to open port 62567:5060 UDP
[1584433304.232|21261|pupnp.cpp :354 ] PUPnP: Sent request to open port 62567:5060 UDP
[1584433304.232|21261|pupnp.cpp :308 ] PUPnP: IGD with public IP 185.239.XXX.XXX was added to the list
[1584433304.245|21299|pupnp.cpp :621 ] PUPnP: Error when trying to handle subscription callback -> UPNP_E_SUBSCRIBE_UNACCEPTED
[1584433304.247|21254|pupnp.cpp :379 ] PUPnP: Opened port 62567:5060 UDP
[1584433304.247|21254|sipaccount.cpp :712 ] [Account 63e40ec72311e5b1] SIP port changed to 62567: reregistering SIP account
[1584433304.247|21254|sipvoiplink.cpp :1218 ] try to resolve '192.168.0.212:5062' (port: 5062)
[1584433304.247|21254|sipaccount.cpp :825 ] Creating transport
[1584433304.248|21254|siptransport.cpp :89 ] ~SipTransport@0x7fd13c001c50 {tr=0x7fd13c001428 {rc=9}}
[1584433304.248|21254|siptransport.cpp :304 ] Recycling transport 0.0.0.0:5060
[1584433304.248|21254|siptransport.cpp :76 ] SipTransport@0x7fd1380024e0 {tr=0x7fd13c001428 {rc=9}}
[1584433304.248|21254|sipaccount.cpp :960 ] Setting VIA sent-by to 192.168.0.10:62567
[1584433304.248|21263|message_engine.cpp:280 ] [Account 63e40ec72311e5b1] Couldn't save messages to /home/user/.cache/jami/63e40ec72311e5b1/messages: basic_ios::clear: iostream error
[1584433304.248|21263|message_engine.cpp:282 ] [Account 63e40ec72311e5b1] saved 0 messages to /home/user/.cache/jami/63e40ec72311e5b1/messages
[1584433304.248|21254|upnp_context.cpp :499 ] [upnp:controller@94277804156544] unregistering cb for mapping 62567:5060 UDP
[1584433304.326|21251|message_engine.cpp:226 ] [Account 63e40ec72311e5b1] couldn't load messages from /home/user/.cache/jami/63e40ec72311e5b1/messages: basic_ios::clear: iostream error
[1584433304.360|21251|sipvoiplink.cpp :676 ] username = 202, server = 192.168.0.212, from = 192.168.0.212
[1584433304.360|21251|sipaccount.cpp :1723 ] Matching account id in request with username 202
[1584433316.563|21247|manager.cpp :914 ] try outgoing call to '+34656870XXX' with account '63e40ec72311e5b1'
[1584433316.563|21247|sipaccount.cpp :190 ] [Account 63e40ec72311e5b1] Calling SIP peer +34656870XXX
[1584433316.563|21247|ringbufferpool.cpp:118 ] Ringbuffer created with id '901617757861941'
[1584433316.563|21247|sipaccount.cpp :218 ] UserAgent: New registered account call to +34656870XXX
[1584433316.563|21247|sipcall.cpp :1346 ] [call:901617757861941] create media ICE transport
[1584433316.563|21247|ice_transport.cpp :211 ] [ice] added host stun server
[1584433316.563|21247|ice_transport.cpp :211 ] [ice] added host stun server
[1584433316.564|21247|ice_transport.cpp :517 ] [ice:0x55bec3031ca0] initialization success
[1584433316.564|21247|ice_transport.cpp :570 ] ICE as master
[1584433316.564|21247|ice_transport.cpp :664 ] [ice:0x55bec3031ca0] (local) ufrag=29fa4fc0, pwd=1001448d09683e4023f9faf4
[1584433316.564|21247|ice_transport.cpp :805 ] [ice:0x55bec3031ca0] UPnP: Trying to open port 46095 for ICE comp 1/4 and adding candidate with public IP
[1584433316.564|21247|upnp_context.cpp :488 ] [upnp:controller@94277803985552] registering cb for mapping 46095:46095 UDP
[1584433316.564|21247|pupnp.cpp :326 ] PUPnP: Attempting to open port 46095:46095 UDP
[1584433316.564|21247|pupnp.cpp :354 ] PUPnP: Sent request to open port 46095:46095 UDP
[1584433316.564|21247|ice_transport.cpp :805 ] [ice:0x55bec3031ca0] UPnP: Trying to open port 34426 for ICE comp 2/4 and adding candidate with public IP
[1584433316.564|21247|upnp_context.cpp :488 ] [upnp:controller@94277803985552] registering cb for mapping 34426:34426 UDP
[1584433316.564|21247|pupnp.cpp :326 ] PUPnP: Attempting to open port 34426:34426 UDP
[1584433316.564|21247|pupnp.cpp :354 ] PUPnP: Sent request to open port 34426:34426 UDP
[1584433316.565|21247|ice_transport.cpp :805 ] [ice:0x55bec3031ca0] UPnP: Trying to open port 59925 for ICE comp 3/4 and adding candidate with public IP
[1584433316.565|21247|upnp_context.cpp :488 ] [upnp:controller@94277803985552] registering cb for mapping 59925:59925 UDP
[1584433316.565|21247|pupnp.cpp :326 ] PUPnP: Attempting to open port 59925:59925 UDP
[1584433316.565|21247|pupnp.cpp :354 ] PUPnP: Sent request to open port 59925:59925 UDP
[1584433316.565|21247|ice_transport.cpp :805 ] [ice:0x55bec3031ca0] UPnP: Trying to open port 40767 for ICE comp 4/4 and adding candidate with public IP
[1584433316.565|21247|upnp_context.cpp :488 ] [upnp:controller@94277803985552] registering cb for mapping 40767:40767 UDP
[1584433316.565|21247|pupnp.cpp :326 ] PUPnP: Attempting to open port 40767:40767 UDP
[1584433316.565|21247|pupnp.cpp :354 ] PUPnP: Sent request to open port 40767:40767 UDP
[1584433316.565|21405|sip_utils.cpp :203 ] Registered thread 0x7fd1497fa4f0 (0x52FF)
[1584433316.565|21247|sdp.cpp :363 ] SDP: Local SDP Session:
v=0
o=userPortatil 3793422116 0 IN IP4 185.239.XXX.XXX
s=Jami Daemon
c=IN IP4 185.239.XXX.XXX
t=0 0
m=audio 26092 RTP/AVP 9 112 110 8 0 104 101
a=rtpmap:9 G722/8000
a=rtpmap:112 speex/32000
a=rtpmap:110 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:104 opus/48000/2
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:26093 IN IP4 185.239.XXX.XXX
a=sendrecv
m=video 53566 RTP/AVP 96 97 98 99
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=428029
a=rtpmap:97 VP8/90000
a=rtpmap:98 MP4V-ES/90000
a=rtpmap:99 H263-1998/90000
a=sendrecv
[1584433316.565|21247|manager.cpp :561 ] ----- Switch current call id to '901617757861941' -----
[1584433316.565|21248|sipcall.cpp :852 ] [call:901617757861941] fill SDP with ICE transport 0x55bec2fedae0
[1584433316.565|21248|sipaccount.cpp :357 ] contact header: <sip:202@192.168.0.10:62567> / "SIP" <sip:202@192.168.0.212:5062> -> <sip:+34656870XXX@192.168.0.212:5062>
[1584433316.565|21248|sipvoiplink.cpp :794 ] [call:901617757861941] INVITE@0x7fd13c004558 state changed to 1 (CALLING): cause=0, tsx@0x7fd13c00bc08 status 0 (Default status message)
[1584433316.565|21248|call.cpp :218 ] [call:901617757861941] state change 0/1, cnx 0/2, code 0
[1584433316.565|21248|call.cpp :241 ] [call:901617757861941] emit client call state change CONNECTING, code 0
[1584433316.580|21402|pupnp.cpp :379 ] PUPnP: Opened port 34426:34426 UDP
[1584433316.580|21402|sip_utils.cpp :203 ] Registered thread 0x7fd17a7534f0 (0x52FF)
[1584433316.580|21402|ice_transport.cpp :767 ] [ice:0x55bec3031ca0] succeed to add candidate for comp_id=2 : 192.168.100.156 : 185.239.XXX.XXX
[1584433316.580|21402|upnp_context.cpp :499 ] [upnp:controller@94277803985552] unregistering cb for mapping 34426:34426 UDP
[1584433316.585|21299|pupnp.cpp :379 ] PUPnP: Opened port 46095:46095 UDP
[1584433316.585|21299|sip_utils.cpp :203 ] Registered thread 0x7fd1737fe4f0 (0x52FF)
[1584433316.585|21299|ice_transport.cpp :767 ] [ice:0x55bec3031ca0] succeed to add candidate for comp_id=1 : 192.168.100.156 : 185.239.XXX.XXX
[1584433316.585|21299|upnp_context.cpp :499 ] [upnp:controller@94277803985552] unregistering cb for mapping 46095:46095 UDP
[1584433316.946|21403|pupnp.cpp :379 ] PUPnP: Opened port 59925:59925 UDP
[1584433316.946|21404|pupnp.cpp :379 ] PUPnP: Opened port 40767:40767 UDP
[1584433316.946|21403|sip_utils.cpp :203 ] Registered thread 0x7fd14a7fc4f0 (0x52FF)
[1584433316.946|21403|ice_transport.cpp :767 ] [ice:0x55bec3031ca0] succeed to add candidate for comp_id=3 : 192.168.100.156 : 185.239.XXX.XXX
[1584433316.946|21403|upnp_context.cpp :499 ] [upnp:controller@94277803985552] unregistering cb for mapping 59925:59925 UDP
[1584433316.946|21404|sip_utils.cpp :203 ] Registered thread 0x7fd149ffb4f0 (0x52FF)
[1584433316.946|21404|ice_transport.cpp :767 ] [ice:0x55bec3031ca0] succeed to add candidate for comp_id=4 : 192.168.100.156 : 185.239.XXX.XXX
[1584433316.946|21404|upnp_context.cpp :499 ] [upnp:controller@94277803985552] unregistering cb for mapping 40767:40767 UDP
[1584433331.565|21251|sipvoiplink.cpp :794 ] [call:901617757861941] INVITE@0x7fd13c004558 state changed to 6 (DISCONNCTD): cause=408, tsx@0x7fd13c00bc08 status 408 (Request Timeout)
[1584433331.566|21251|call.cpp :218 ] [call:901617757861941] state change 1/5, cnx 2/0, code 408
[1584433331.566|21251|call.cpp :241 ] [call:901617757861941] emit client call state change FAILURE, code 408
[1584433331.566|21248|manager.cpp :1970 ] [call:901617757861941] Failed
[1584433331.566|21248|manager.cpp :1595 ] [call:901617757861941] Remove local audio
[1584433331.566|21248|sipcall.cpp :745 ] [call:901617757861941] removeCall()
[1584433331.566|21248|call_factory.cpp :39 ] Removing call 901617757861941
[1584433331.566|21248|call_factory.cpp :43 ] Remaining 0 SIP call(s)
[1584433331.566|21248|call.cpp :218 ] [call:901617757861941] state change 5/6, cnx 0/0, code 0
[1584433331.566|21248|call.cpp :241 ] [call:901617757861941] emit client call state change OVER, code 0
[1584433331.566|21248|ice_transport.cpp :405 ] [ice:0x55bec3031ca0] destroying
[1584433331.566|21248|sip_utils.cpp :203 ] Registered thread 0x7fd17ed134f0 (0x52FF)
[1584433332.080|21248|upnp_control.cpp :38 ] Destroying UPnP Controller 0x55bec3044a90
[1584433332.080|21248|pupnp.cpp :430 ] PUPnP: Attempting to close port 34426 UDP
[1584433332.081|21248|pupnp.cpp :1009 ] PUPnP: Sent request to close port 34426 UDP
[1584433332.081|21248|pupnp.cpp :430 ] PUPnP: Attempting to close port 40767 UDP
[1584433332.082|21248|pupnp.cpp :1009 ] PUPnP: Sent request to close port 40767 UDP
[1584433332.082|21248|pupnp.cpp :430 ] PUPnP: Attempting to close port 46095 UDP
[1584433332.082|21248|pupnp.cpp :1009 ] PUPnP: Sent request to close port 46095 UDP
[1584433332.082|21248|pupnp.cpp :430 ] PUPnP: Attempting to close port 59925 UDP
[1584433332.083|21248|pupnp.cpp :1009 ] PUPnP: Sent request to close port 59925 UDP
[1584433332.083|21248|upnp_control.cpp :38 ] Destroying UPnP Controller 0x55bec3074780
[1584433332.094|21403|pupnp.cpp :408 ] PUPnP: Closed port 34426 UDP
[1584433332.096|21462|pupnp.cpp :408 ] PUPnP: Closed port 40767 UDP
[1584433332.101|21463|pupnp.cpp :408 ] PUPnP: Closed port 46095 UDP
[1584433332.614|21464|pupnp.cpp :408 ] PUPnP: Closed port 59925 UDP
```
And this in the FreePBX side:
```
sip*CLI> pjsip show history
No. Timestamp (Dir) Address SIP Message
===== ========== ============================== ===================================
00000 1584433296 * ==> 192.168.0.10:62567 OPTIONS sip:202@192.168.0.10:62567 SIP/2.0
00001 1584433299 * <== 192.168.0.10:62567 REGISTER sip:192.168.0.212:5062 SIP/2.0
00002 1584433299 * ==> 192.168.0.10:62567 SIP/2.0 401 Unauthorized
00003 1584433300 * ==> 192.168.0.10:62567 OPTIONS sip:202@192.168.0.10:62567 SIP/2.0
00004 1584433300 * <== 192.168.0.10:62567 REGISTER sip:192.168.0.212:5062 SIP/2.0
00005 1584433300 * ==> 192.168.0.10:62567 SIP/2.0 401 Unauthorized
00006 1584433300 * <== 192.168.0.10:62567 REGISTER sip:192.168.0.212:5062 SIP/2.0
00007 1584433300 * <== 192.168.0.10:62567 SIP/2.0 200 OK
00008 1584433300 * ==> 192.168.0.10:62567 SIP/2.0 200 OK
00009 1584433300 * ==> 192.168.0.10:62567 OPTIONS sip:202@192.168.0.10:62567 SIP/2.0
00010 1584433300 * ==> 192.168.0.10:62567 NOTIFY sip:202@192.168.0.10:62567 SIP/2.0
00011 1584433300 * <== 192.168.0.10:62567 SIP/2.0 200 OK
00012 1584433300 * <== 192.168.0.10:62567 SIP/2.0 200 OK
00013 1584433304 * <== 192.168.0.10:62567 REGISTER sip:192.168.0.212:5062 SIP/2.0
00014 1584433304 * ==> 192.168.0.10:62567 SIP/2.0 401 Unauthorized
00015 1584433304 * <== 192.168.0.10:62567 REGISTER sip:192.168.0.212:5062 SIP/2.0
00016 1584433304 * ==> 192.168.0.10:62567 SIP/2.0 200 OK
00017 1584433304 * ==> 192.168.0.10:62567 NOTIFY sip:202@192.168.0.10:62567 SIP/2.0
00018 1584433304 * <== 192.168.0.10:62567 SIP/2.0 200 OK
00019 1584433316 * <== 192.168.100.156:5060 INVITE sip:+34656870XXX@192.168.0.212:5062 SIP/2.0
00020 1584433316 * ==> 192.168.100.156:5060 SIP/2.0 401 Unauthorized
00021 1584433317 * <== 192.168.100.156:5060 INVITE sip:+34656870XXX@192.168.0.212:5062 SIP/2.0
00022 1584433317 * ==> 192.168.100.156:5060 SIP/2.0 401 Unauthorized
00023 1584433318 * <== 192.168.100.156:5060 INVITE sip:+34656870XXX@192.168.0.212:5062 SIP/2.0
00024 1584433318 * ==> 192.168.100.156:5060 SIP/2.0 401 Unauthorized
00025 1584433320 * <== 192.168.100.156:5060 INVITE sip:+34656870XXX@192.168.0.212:5062 SIP/2.0
00026 1584433320 * ==> 192.168.100.156:5060 SIP/2.0 401 Unauthorized
00027 1584433324 * <== 192.168.100.156:5060 INVITE sip:+34656870XXX@192.168.0.212:5062 SIP/2.0
00028 1584433324 * ==> 192.168.100.156:5060 SIP/2.0 401 Unauthorized
```
IPs and ranges are as follow:
* `192.168.0.0/24` is office local network, where PBX is
* `192.168.0.10` is VPN server
* `192.168.0.212` is FreePBX
* `192.168.100.0/24` is office local network VPN addresses
* `192.168.100.156` is Ubuntu client assigned IP through VPN
* `192.168.1.0/24` is external testing lab (my house :))
* `192.168.1.107` is Ubuntu client assigned IP
* `192.168.1.254` is testing lab router
* `185.239.XXX.XXX` is ISP on testing lab assigned IP
Feel free to suggest or advice anything in order to test this issue.https://git.jami.net/savoirfairelinux/jami-project/-/issues/824Remote control?2020-03-17T20:16:12ZYvan-MassonRemote control?Hi,
Thanks for this great software!
Jami can be used to share someone's screen, but could it be used in the future to also allow remote control? I am thinking of something like Teamviewer.
Regards,
YvanHi,
Thanks for this great software!
Jami can be used to share someone's screen, but could it be used in the future to also allow remote control? I am thinking of something like Teamviewer.
Regards,
Yvanhttps://git.jami.net/savoirfairelinux/jami-project/-/issues/825[Feature Request] Remote Control For Calls & Files2021-08-20T16:08:06Ztrymeout[Feature Request] Remote Control For Calls & FilesSince Jami can be simultaneously be used on multiple devices, I would like to make a suggestion on having DeviceA to be able to control DeviceB with Jami functions
The ability to answer a call from device A for device B
The ability to e...Since Jami can be simultaneously be used on multiple devices, I would like to make a suggestion on having DeviceA to be able to control DeviceB with Jami functions
The ability to answer a call from device A for device B
The ability to end a call from device A when the call is on device B
The ability to add/remove users on a call on device B from device A
The ability to receive files to Device B from Device Ahttps://git.jami.net/savoirfairelinux/jami-project/-/issues/826[Feature Request] Option To Keep Jami Window Minimized During Incoming Call2020-03-19T18:40:45Ztrymeout[Feature Request] Option To Keep Jami Window Minimized During Incoming CallWhen someone calls you on Jami desktop (Windows, Mac, Linux), you can have an setting which when enabled, it will not have the Jami window popup when your receive a incoming call and instead during the incoming call, the window will stay...When someone calls you on Jami desktop (Windows, Mac, Linux), you can have an setting which when enabled, it will not have the Jami window popup when your receive a incoming call and instead during the incoming call, the window will stay minimized and you will hear the Jami ringtone which will notify you of a incoming call.
I do not want the Jami window maximized during a incoming call feature removed, just have a settings to choose weather to enable or disable this.https://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1135Avatar: display 2 character initials if there is more than one name in the di...2021-08-19T18:58:15ZovariAvatar: display 2 character initials if there is more than one name in the display nameExamples:
* `aardvark !baardvark` → `AB`
* `aardvark baardvark !caardvark` → `AC`
* `óvári` → `Ó`
* `őze` → `Ő`
* `John Double-Barrel` → `JD`
* `John` → `J`
What do you think?
Thank you
https://gitlab.gnome.org/GNOME/geary/-/commit/90...Examples:
* `aardvark !baardvark` → `AB`
* `aardvark baardvark !caardvark` → `AC`
* `óvári` → `Ó`
* `őze` → `Ő`
* `John Double-Barrel` → `JD`
* `John` → `J`
What do you think?
Thank you
https://gitlab.gnome.org/GNOME/geary/-/commit/904f08e3fdd50e94daf947c8b0872e1c3b2f1cd7https://git.jami.net/savoirfairelinux/jami-project/-/issues/827Back button in the login page doesn't work2020-03-18T20:52:08ZGiuseppeBack button in the login page doesn't workI just installed Jami and the first time it shows me the login page. If I press the back button to exit from Jami, it does not close but shows me the login page again.I just installed Jami and the first time it shows me the login page. If I press the back button to exit from Jami, it does not close but shows me the login page again.https://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1136Message containing an emoji appear blank2020-11-20T00:16:02ZKuba OrlikMessage containing an emoji appear blankI've just send a message containing a 💪 emoji and the message appear as if it was blank
![image](/uploads/b3fbf6642307d78d5e5e14d69671e3ff/image.png)
Other messages work just fineI've just send a message containing a 💪 emoji and the message appear as if it was blank
![image](/uploads/b3fbf6642307d78d5e5e14d69671e3ff/image.png)
Other messages work just finehttps://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1137chatview: typing indicator support [intercom]2020-03-19T01:31:38Zovarichatview: typing indicator support [intercom]Please do not show the typing indicator in the chatview if that client is typing.
What do you think?
Thank youPlease do not show the typing indicator in the chatview if that client is typing.
What do you think?
Thank youhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/343multi device & file transfer.2020-11-10T20:48:59ZSébastien Blinmulti device & file transfer.# Scenario
+ A got 2 devices
+ B sends a file to A
# Expected
A should receives the file on both devices
# Current
One device is cut when the other one received the whole file# Scenario
+ A got 2 devices
+ B sends a file to A
# Expected
A should receives the file on both devices
# Current
One device is cut when the other one received the whole fileIteration 22Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/211macOS : can only answer call once2020-03-18T22:49:21ZdmacOS : can only answer call onceCaller is Jami version `20200317.1.a0099c8~dfsg1-1` on `linuxmint 19.1`. Callee is Jami `20200318` on `MacOS 10.13.4`. On a local network.
I can answer call once and it works fine. Subsequent calls cannot be answered, as the accept butt...Caller is Jami version `20200317.1.a0099c8~dfsg1-1` on `linuxmint 19.1`. Callee is Jami `20200318` on `MacOS 10.13.4`. On a local network.
I can answer call once and it works fine. Subsequent calls cannot be answered, as the accept button is not present anymore : only the refuse button remains. Restarting Jami works.
---
You're doing an important job in participating internet's independence, in a world of proprietary messaging. Thank you.Sébastien BlinKateryna KostiukSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-client-android/-/issues/709Back button in the login page doesn't work2020-03-18T20:52:08ZGiuseppeBack button in the login page doesn't workI just installed Jami and the first time it shows me the login page. If I press the back button to exit from Jami, it does not close but shows me the login page again.I just installed Jami and the first time it shows me the login page. If I press the back button to exit from Jami, it does not close but shows me the login page again.https://git.jami.net/savoirfairelinux/jami-client-ios/-/issues/63Can't see full acount id on ios version2020-03-30T15:53:30ZSébastien BlinCan't see full acount id on ios versioncf https://www.reddit.com/r/jami/comments/fkw886/cant_see_full_acount_id_on_ios_version/cf https://www.reddit.com/r/jami/comments/fkw886/cant_see_full_acount_id_on_ios_version/Kateryna KostiukKateryna Kostiuk