Re: Captures

Elisa Nectoux <[email protected]> Mon, 27 Oct 2025 14:23:53 +0100
Newsgroups gmane.comp.voip.linphone.user
Message-ID <704DA927-8362-4558-A22F-8F22C457AB78@belledonne-communications.com>
--===============1901615870801741816==
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_32DE9A61-5A69-47F5-93D7-6B20F3FE1C3D"


--Apple-Mail=_32DE9A61-5A69-47F5-93D7-6B20F3FE1C3D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi Greg,

I=E2=80=99m sorry that this caused any confusion. There was nothing =
malicious behind it. .smff is just a private internal format we created =
for internal purposes. It should not have been visible in the Linphone =
app, as it cannot be read by third party software =E2=80=94this was a =
mistake, and we=E2=80=99ll restore the previous behaviour soon.

Thanks for your understanding!

>  You say you don't have "open core" but you do offer proprietary
>  licenses.  I would assume that you mean you sell the right for
>  customers to create proprietary derived works, but do not provide =
them
>  with extra proprietary code.  (Perhaps you help them make their
>  modifications e.g. white labeling, if that's distinct from having
>  withheld changes made available to multiple proprietary customers).
>  Is that correct?
I can confirm again that we do not have an open-core model: all of our =
source code is 100% open source. We do not keep any part of our =
telephony and unified communications solutions closed.

Your right: for customers who wish to integrate our source code into a =
closed-source application (which is not allowed under GPL licenses), we =
offer proprietary licenses. However, the source code itself is exactly =
the same=E2=80=94there is only one Linphone version, the open-source =
version.

This is the same dual-license model used by frameworks such as Qt. It is =
very different from an open-core model, where some parts are open-source =
and others remain closed-source.

Even for customers who purchase a proprietary license to integrate our =
technology into a closed-source app, any development funded by those =
customers that is made by our team is contributed under the open-source =
license. This dual-license model is very effective: it helps finance new =
features and improvements that benefit the open-source and free end-user =
community.

Currently, most of our revenue (about 75%) comes from support contracts, =
though.

A couple of years ago, we gave a talk at the OW2 Conference in English, =
presenting our different revenue streams with an idea on transparency =
and sharing. If you=E2=80=99re interested, the talk is available here: =
https://www.youtube.com/watch?v=3DRiF4kKb1tJo

Please feel free to reach out if you have any other questions about our =
business model :-)

Have a nice day,

Elisa NECTOUX
Sales & Marketing Manager

Belledonne Communications, the company behind the Linphone project
www.linphone.org <http://www.linphone.org/>




> Le 27 oct. 2025 =C3=A0 14:03, Greg Troxel <[email protected]> a =C3=A9crit =
:
>=20
> Elisa Nectoux <[email protected]> writes:
>=20
>> What do you mean by =C2=AB this is not open source =C2=BB? The source =
code of
>> Linphone and of all the software we=E2=80=99re developing at =
Belledonne
>> Communications is 100% open source (we do not have an open core
>> model).
>=20
> Some clarification would be helpful here.  The basic issue is that the
> Free Software community is uncomfortable, or rather that the situation
> makes reasonable people uncomfortable.
>=20
> I think people are concerned because .smff is a file extension (and =
thus
> presumed format), and when searching about it, people in general (and =
me
> in particular) don't seem to find anything about it on the web.  No
> documentation, no libraries, no mention in wikpedia:
>  https://en.wikipedia.org/wiki/List_of_file_formats
>=20
> Reading git history at
>  https://gitlab.linphone.org/BC/public/linphone-desktop
> I get the impression that the files are really Matroska, normally =
.mkv,
> but were relabeled as .smff for no apparent reason, or at least no
> reason that was present in the commit message or added as a comment.
> And then just last week there was a commit that had at least 9 =
unrelated
> changes.
>=20
>=20
> My questions are thus:
>=20
>  Is smff purely an additional nonstandard/unusual label for mkv, so
>  that people with a recording foo.smff can just rename to foo.mkv, and
>  then they are usable with standard tools?
>=20
>  What is the larger situation with smff?  Is the assertion that it is =
a
>  Belledonne-only thing valid?  Why was it created?  What Free software
>  deals with it?
>=20
>  What was the rationale for changing mkv to smff in the source code in
>  February of 2025?
>=20
>  You say you don't have "open core" but you do offer proprietary
>  licenses.  I would assume that you mean you sell the right for
>  customers to create proprietary derived works, but do not provide =
them
>  with extra proprietary code.  (Perhaps you help them make their
>  modifications e.g. white labeling, if that's distinct from having
>  withheld changes made available to multiple proprietary customers).
>  Is that correct?
>=20
>=20
>  What is really going on with the sources?  It is irregular and very
>  unusual to have commits with many unrelated changes from a software
>  engineering viewpoint, and that suggests that the public-facing
>  repository isn't the real repository, that there is an authoritative
>  repository someplace else, and that this is some kind of squash
>  commit.  But if linphone is "100% open source" then this sort of
>  scheme doesn't make any sense.  It is a barrier to contributor,
>  discouraging people from participating.
>=20
>=20
>=20
>=20
> commit afbf8c1fa4f09affe770475d735555e47c68b237
> Author: Julien Wadel <[email protected]>
> Date:   Tue Feb 4 11:50:37 2025 +0100
>=20
>    Change mkv into smff ("Simple Media File Format" which is the =
Standard Matroska file format that supports video, .mkv or .mka file =
extension)
>=20
> diff --git a/Linphone/model/call/CallModel.cpp =
b/Linphone/model/call/CallModel.cpp
> index 973e01f13..5d46105a7 100644
> --- a/Linphone/model/call/CallModel.cpp
> +++ b/Linphone/model/call/CallModel.cpp
> @@ -55,7 +55,7 @@ void CallModel::accept(bool withVideo) {
> 	params->setRecordFile(
> 	    Paths::getCapturesDirPath()
> 	        =
.append(Utils::generateSavedFilename(QString::fromStdString(mMonitor->getT=
oAddress()->getUsername()), ""))
> -	        .append(".mkv")
> +	        .append(".smff")
> 	        .toStdString());
> 	// Answer with local call address.
> 	auto localAddress =3D mMonitor->getCallLog()->getLocalAddress();
> diff --git a/Linphone/model/tool/ToolModel.cpp =
b/Linphone/model/tool/ToolModel.cpp
> index 60666afa3..d4215676f 100644
> --- a/Linphone/model/tool/ToolModel.cpp
> +++ b/Linphone/model/tool/ToolModel.cpp
> @@ -177,7 +177,7 @@ bool ToolModel::createCall(const QString =
&sipAddress,
> 		params->setRecordFile(
> 		    Paths::getCapturesDirPath()
> 		        =
.append(Utils::generateSavedFilename(QString::fromStdString(address->getUs=
ername()), ""))
> -		        .append(".mkv")
> +		        .append(".smff")
> 		        .toStdString());
> 	}
>=20
>=20
>=20
>=20
>=20
> commit 97b1d11adb8449e6061c52144d59739b7f2c7de2
> Author: Gaelle Braud <[email protected]>
> Date:   Tue Oct 14 12:42:53 2025 +0200
>=20
>    Fixes:
>=20
>    improve unencrypted conversations warning indicator #LINQT-2061
>=20
>    allow user to choose an address for sending message when multiple =
addresses in contact #LINQT-2054
>=20
>    verify friend has a core to avoid crash in liblinphone #LINQT-1933
>=20
>    wait for window to be active before calling markAsRead (fix =
#LINQT-2048)
>=20
>    fix button text color (fix #LINQT-1832)
>=20
>    change format for mkv #LINQT-2056
>=20
>    Registration : check phone number format #LINQT-2044
>=20
>    fix window closing even if a new call is started #LINQT-2055
>=20
>    display popup to delete meetings on right click in meeting list =
item (allow to delete canceled meetings which cannot be displayed in the =
right panel)


--Apple-Mail=_32DE9A61-5A69-47F5-93D7-6B20F3FE1C3D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><p =
data-start=3D"147" data-end=3D"157">Hi Greg,</p><p data-start=3D"159" =
data-end=3D"435">I=E2=80=99m sorry that this caused any confusion. There =
was nothing malicious behind it.&nbsp;<code data-start=3D"240" =
data-end=3D"247">.smff</code>&nbsp;is just a private internal format we =
created for internal purposes. It should not have been visible in the =
Linphone app, as it cannot be read by third party software =E2=80=94this =
was a mistake, and we=E2=80=99ll restore the previous behaviour =
soon.</p><p data-start=3D"437" data-end=3D"469">Thanks for your =
understanding!</p><div><blockquote type=3D"cite">&nbsp;You say you don't =
have "open core" but you do offer proprietary<br>&nbsp;licenses. &nbsp;I =
would assume that you mean you sell the right for<br>&nbsp;customers to =
create proprietary derived works, but do not provide them<br>&nbsp;with =
extra proprietary code. &nbsp;(Perhaps you help them make =
their<br>&nbsp;modifications e.g. white labeling, if that's distinct =
from having<br>&nbsp;withheld changes made available to multiple =
proprietary customers).<br>&nbsp;Is that correct?<p data-start=3D"76" =
data-end=3D"239"></p></blockquote><p data-start=3D"76" data-end=3D"239">I =
can confirm again that we do not<u> </u>have an open-core model: all of =
our source code is 100% open source. We do not keep any part of our =
telephony and unified communications solutions closed.</p><p =
data-start=3D"241" data-end=3D"514">Your right: for customers who wish =
to integrate our source code into a closed-source application (which is =
not allowed under GPL licenses), we offer proprietary licenses. However, =
the source code itself is exactly the same=E2=80=94there is only one =
Linphone version, the open-source version.</p><p data-start=3D"516" =
data-end=3D"696">This is the same dual-license model used by frameworks =
such as Qt. It is very different from an open-core model, where some =
parts are open-source and others remain closed-source.</p><p =
data-start=3D"698" data-end=3D"1043">Even for customers who purchase a =
proprietary license to integrate our technology into a closed-source =
app, any development funded by those customers that is made by our team =
is contributed under the open-source license. This dual-license model is =
very effective: it helps finance new features and improvements that =
benefit the open-source and free end-user community.</p><p =
data-start=3D"1045" data-end=3D"1119">Currently, most of our revenue =
(about 75%) comes from support contracts, though.</p><p =
data-start=3D"1121" data-end=3D"1334">A couple of years ago, we gave a =
talk at the OW2 Conference in English, presenting our different revenue =
streams with an idea on transparency and sharing. If you=E2=80=99re =
interested, the talk is available here:&nbsp;<a =
href=3D"https://www.youtube.com/watch?v=3DRiF4kKb1tJo">https://www.youtube=
.com/watch?v=3DRiF4kKb1tJo</a></p><p data-start=3D"1336" =
data-end=3D"1425">Please feel free to reach out if you have any other =
questions about our business model :-)</p><p data-start=3D"1336" =
data-end=3D"1425">Have a nice day,</p></div><div><div>
<meta charset=3D"UTF-8"><div dir=3D"auto" style=3D"caret-color: rgb(0, =
0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); font-variant-caps: normal; letter-spacing: normal; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"font-variant-caps: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; caret-color: =
rgb(0, 0, 0); overflow-wrap: break-word; -webkit-nbsp-mode: space; =
line-break: after-white-space;"><div dir=3D"auto" style=3D"caret-color: =
rgb(0, 0, 0); font-variant-caps: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none; overflow-wrap: break-word; -webkit-nbsp-mode: =
space; line-break: after-white-space;"><div dir=3D"auto" =
style=3D"caret-color: rgb(0, 0, 0); letter-spacing: normal; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div dir=3D"auto" style=3D"caret-color: rgb(0, 0, =
0); letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div style=3D"letter-spacing: normal; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div style=3D"letter-spacing: normal; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div style=3D"letter-spacing: normal; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div style=3D"color: rgb(0, 0, 0); letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><font color=3D"#ff5e04" style=3D"font-style: normal; =
font-size: 14px;"><b>Elisa NECTOUX</b></font><br><span =
style=3D"font-family: Helvetica; font-style: normal; font-weight: =
normal; font-size: 12px; color: rgb(0, 0, 0);"><i>Sales &amp; Marketing =
Manager</i></span><br></div><div style=3D"color: rgb(0, 0, 0); =
font-family: Helvetica; font-style: normal; font-weight: normal; =
font-size: 12px; letter-spacing: normal; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><br></div><div =
style=3D"letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><span =
style=3D"color: rgb(0, 0, 0); font-style: normal;"><b>Belledonne =
Communications</b></span><span style=3D"color: rgb(0, 0, 0); =
font-family: Helvetica; font-style: normal; font-weight: normal; =
font-size: =
12px;">,&nbsp;the&nbsp;company&nbsp;behind&nbsp;the&nbsp;</span><span =
style=3D"font-style: normal;"><b><font =
color=3D"#ff5e04">Linphone</font></b></span><span style=3D"color: rgb(0, =
0, 0); font-family: Helvetica; font-style: normal; font-weight: normal; =
font-size: 12px;">&nbsp;project</span></div><div style=3D"color: rgb(0, =
0, 0); font-family: Helvetica; font-style: normal; font-weight: normal; =
font-size: 12px; letter-spacing: normal; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;"><i><a =
href=3D"http://www.linphone.org">www.linphone.org</a></i></div><div =
style=3D"color: rgb(0, 0, 0); font-family: Helvetica; font-style: =
normal; font-weight: normal; font-size: 12px; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><br></div></div></div></div></div></div></div></div></=
div></div></div></div></div></div></div></div><br =
class=3D"Apple-interchange-newline"><br =
class=3D"Apple-interchange-newline">
</div>
<div><br><blockquote type=3D"cite"><div>Le 27 oct. 2025 =C3=A0 14:03, =
Greg Troxel &lt;[email protected]&gt; a =C3=A9crit :</div><br =
class=3D"Apple-interchange-newline"><div><div>Elisa Nectoux =
&lt;[email protected]&gt; =
writes:<br><br><blockquote type=3D"cite">What do you mean by =C2=AB this =
is not open source =C2=BB? The source code of<br>Linphone and of all the =
software we=E2=80=99re developing at Belledonne<br>Communications is =
100% open source (we do not have an open =
core<br>model).<br></blockquote><br>Some clarification would be helpful =
here. &nbsp;The basic issue is that the<br>Free Software community is =
uncomfortable, or rather that the situation<br>makes reasonable people =
uncomfortable.<br><br>I think people are concerned because .smff is a =
file extension (and thus<br>presumed format), and when searching about =
it, people in general (and me<br>in particular) don't seem to find =
anything about it on the web. &nbsp;No<br>documentation, no libraries, =
no mention in wikpedia:<br> =
&nbsp;https://en.wikipedia.org/wiki/List_of_file_formats<br><br>Reading =
git history at<br> =
&nbsp;https://gitlab.linphone.org/BC/public/linphone-desktop<br>I get =
the impression that the files are really Matroska, normally .mkv,<br>but =
were relabeled as .smff for no apparent reason, or at least no<br>reason =
that was present in the commit message or added as a comment.<br>And =
then just last week there was a commit that had at least 9 =
unrelated<br>changes.<br><br><br>My questions are thus:<br><br> &nbsp;Is =
smff purely an additional nonstandard/unusual label for mkv, so<br> =
&nbsp;that people with a recording foo.smff can just rename to foo.mkv, =
and<br> &nbsp;then they are usable with standard tools?<br><br> =
&nbsp;What is the larger situation with smff? &nbsp;Is the assertion =
that it is a<br> &nbsp;Belledonne-only thing valid? &nbsp;Why was it =
created? &nbsp;What Free software<br> &nbsp;deals with it?<br><br> =
&nbsp;What was the rationale for changing mkv to smff in the source code =
in<br> &nbsp;February of 2025?<br><br> &nbsp;You say you don't have =
"open core" but you do offer proprietary<br> &nbsp;licenses. &nbsp;I =
would assume that you mean you sell the right for<br> &nbsp;customers to =
create proprietary derived works, but do not provide them<br> &nbsp;with =
extra proprietary code. &nbsp;(Perhaps you help them make their<br> =
&nbsp;modifications e.g. white labeling, if that's distinct from =
having<br> &nbsp;withheld changes made available to multiple proprietary =
customers).<br> &nbsp;Is that correct?<br><br><br> &nbsp;What is really =
going on with the sources? &nbsp;It is irregular and very<br> =
&nbsp;unusual to have commits with many unrelated changes from a =
software<br> &nbsp;engineering viewpoint, and that suggests that the =
public-facing<br> &nbsp;repository isn't the real repository, that there =
is an authoritative<br> &nbsp;repository someplace else, and that this =
is some kind of squash<br> &nbsp;commit. &nbsp;But if linphone is "100% =
open source" then this sort of<br> &nbsp;scheme doesn't make any sense. =
&nbsp;It is a barrier to contributor,<br> &nbsp;discouraging people from =
participating.<br><br><br><br><br>commit =
afbf8c1fa4f09affe770475d735555e47c68b237<br>Author: Julien Wadel =
&lt;[email protected]&gt;<br>Date: =
&nbsp;&nbsp;Tue Feb 4 11:50:37 2025 +0100<br><br> =
&nbsp;&nbsp;&nbsp;Change mkv into smff ("Simple Media File Format" which =
is the Standard Matroska file format that supports video, .mkv or .mka =
file extension)<br><br>diff --git a/Linphone/model/call/CallModel.cpp =
b/Linphone/model/call/CallModel.cpp<br>index 973e01f13..5d46105a7 =
100644<br>--- a/Linphone/model/call/CallModel.cpp<br>+++ =
b/Linphone/model/call/CallModel.cpp<br>@@ -55,7 +55,7 @@ void =
CallModel::accept(bool withVideo) {<br> <span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>params-&gt;setRecordFile(<br> =
<span class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;Paths::getCapturesDirPath()<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(Utils::generateSavedFile=
name(QString::fromStdString(mMonitor-&gt;getToAddress()-&gt;getUsername())=
, ""))<br>-<span class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(".mkv")<br>+<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(".smff")<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.toStdString());<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>// Answer =
with local call address.<br> <span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>auto localAddress =3D =
mMonitor-&gt;getCallLog()-&gt;getLocalAddress();<br>diff --git =
a/Linphone/model/tool/ToolModel.cpp =
b/Linphone/model/tool/ToolModel.cpp<br>index 60666afa3..d4215676f =
100644<br>--- a/Linphone/model/tool/ToolModel.cpp<br>+++ =
b/Linphone/model/tool/ToolModel.cpp<br>@@ -177,7 +177,7 @@ bool =
ToolModel::createCall(const QString &amp;sipAddress,<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span>params-&gt;setRecordFile(<br> <span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;Paths::getCapturesDirPath()<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(Utils::generateSavedFile=
name(QString::fromStdString(address-&gt;getUsername()), ""))<br>-<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(".mkv")<br>+<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.append(".smff")<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.toStdString());<br> <span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span>}<br><br><br><br><br><br>commit =
97b1d11adb8449e6061c52144d59739b7f2c7de2<br>Author: Gaelle Braud =
&lt;[email protected]&gt;<br>Date: =
&nbsp;&nbsp;Tue Oct 14 12:42:53 2025 +0200<br><br> =
&nbsp;&nbsp;&nbsp;Fixes:<br><br> &nbsp;&nbsp;&nbsp;improve unencrypted =
conversations warning indicator #LINQT-2061<br><br> =
&nbsp;&nbsp;&nbsp;allow user to choose an address for sending message =
when multiple addresses in contact #LINQT-2054<br><br> =
&nbsp;&nbsp;&nbsp;verify friend has a core to avoid crash in liblinphone =
#LINQT-1933<br><br> &nbsp;&nbsp;&nbsp;wait for window to be active =
before calling markAsRead (fix #LINQT-2048)<br><br> =
&nbsp;&nbsp;&nbsp;fix button text color (fix #LINQT-1832)<br><br> =
&nbsp;&nbsp;&nbsp;change format for mkv #LINQT-2056<br><br> =
&nbsp;&nbsp;&nbsp;Registration : check phone number format =
#LINQT-2044<br><br> &nbsp;&nbsp;&nbsp;fix window closing even if a new =
call is started #LINQT-2055<br><br> &nbsp;&nbsp;&nbsp;display popup to =
delete meetings on right click in meeting list item (allow to delete =
canceled meetings which cannot be displayed in the right =
panel)<br></div></div></blockquote></div><br></div></body></html>=

--Apple-Mail=_32DE9A61-5A69-47F5-93D7-6B20F3FE1C3D--


--===============1901615870801741816==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTGlucGhvbmUt
dXNlcnMgbWFpbGluZyBsaXN0CkxpbnBob25lLXVzZXJzQG5vbmdudS5vcmcKaHR0cHM6Ly9saXN0
cy5ub25nbnUub3JnL21haWxtYW4vbGlzdGluZm8vbGlucGhvbmUtdXNlcnMK

--===============1901615870801741816==--