Bug#983365: linphone-desktop: chat messages

2021-03-20 Thread Dennis Filder
X-Debbugs-CC: David Pirotte 

On Thu, Mar 18, 2021 at 06:52:21PM -0300, David Pirotte wrote:

> I did try and here is happened:
>
>   I sent a message, but no 'trace' (for me, the sender), that I
>   did send the msg ... normally, when we send a msg, using the
>   AppImage, linphone sends it and displays a feedback, in the top
>   right corner of the message 'box'
>
>   !   error, the msgs couldn't be sent ...
>
>   v   grey color, msgs delivered, but not read yet
>
>   blue, the recipient did read the msg
>
> But with linphone debian, nothing is displayed 'at all', although the
> msg was sent, the recipient did receive it, and later responded, even
> after that though, no 'v', nor grey, nor 'blue' ... I wonder why and if
> this is a (separate) bug?

I just tried this with both the debian and the appimage version, and
saw no difference in behaviour: while attempting delivery linphone
shows an orange dotted circle rotating clockwise.  When delivery was
not acknowledged a red disc with a white exclamation point is shown.
Clicking on it triggers a redelivery attempt.  For successful
delivery, no icon is shown, but hovering with the mouse brings up a
popup "Delivered".  If you see different behaviour could you provide a
cropped screenshot to show it?

It could be that the behaviour is different if the used SIP proxy
(e.g. linphone.org) handles the message delivery on behalf of
linphone.

> ps:   by the way, crossing my bug reports, the date is still
> wrong, fwiw, the attempt i made today, March the 18th are all labeled,
> on top/center of the messages I sent (to two diff recipients to try
> ...)
>
>   Wednesday, March 17, 2021
>
>   time(which the correct local time) my message...

I cannot reproduce this (TZ: +01:00).  The date I see is the date on
which I sent the messages.  What timezone are your chat partners
residing in?  What is the local time-of-day is the first message for
that date?  If it's an issue due to timezones it will be somewhat
difficult to track down.

Regards,
Dennis



Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-18 Thread David Pirotte
Bernard,
Dennis,

> Indeed:
> 
> ii  libsoci-core4.0:amd64 4.0.1-5  ...
> ii  libsoci-sqlite3-4.0:amd64 4.0.1-5  ...
> 
> solved the problem: I now see the chat msgs history when I launch the
> app. I didn't have a chance to send a new msg yet, because it's the
> middle of the night for nearly all my contacts, and I don't want to
> inadvertently 'awake' someone, but I am pretty sure its ok, will try
> tomorrow ...

I did try and here is happened:

I sent a message, but no 'trace' (for me, the sender), that I
did send the msg ... normally, when we send a msg, using the
AppImage, linphone sends it and displays a feedback, in the top
right corner of the message 'box'

!   error, the msgs couldn't be sent ...

v   grey color, msgs delivered, but not read yet

blue, the recipient did read the msg

But with linphone debian, nothing is displayed 'at all', although the
msg was sent, the recipient did receive it, and later responded, even
after that though, no 'v', nor grey, nor 'blue' ... I wonder why and if
this is a (separate) bug?

Thanks,
David

ps: by the way, crossing my bug reports, the date is still
wrong, fwiw, the attempt i made today, March the 18th are all labeled,
on top/center of the messages I sent (to two diff recipients to try
...) 

Wednesday, March 17, 2021

time(which the correct local time) my message...


pgpB4lNRr1KnX.pgp
Description: OpenPGP digital signature


Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-17 Thread David Pirotte
Hello Bernard,
Dennis,

> > Please make sure you also test a file transfer, which is part of the
> > chat message interface [I couldn't try since the chat msgs itself
> > didn't work ...], The file transfer functionality is absolutely
> > essential as well, afaic at least   

> soci 4.0.1-5 has migrated to testing yesterday. The bug should be
> fixed now for a fully up-to-date Bullseye system.

Indeed:

ii  libsoci-core4.0:amd64   4.0.1-5  ...
ii  libsoci-sqlite3-4.0:amd64   4.0.1-5  ...

solved the problem: I now see the chat msgs history when I launch the
app. I didn't have a chance to send a new msg yet, because it's the
middle of the night for nearly all my contacts, and I don't want to
inadvertently 'awake' someone, but I am pretty sure its ok, will try
tomorrow ...

Thanks to both of you!
David


pgpcqgLatuS7U.pgp
Description: OpenPGP digital signature


Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-17 Thread Bernhard Schmidt
Dear David,

>>> I finally found the bug: ...
> 
> Excellent!
> 
> Please make sure you also test a file transfer, which is part of the
> chat message interface [I couldn't try since the chat msgs itself
> didn't work ...], The file transfer functionality is absolutely
> essential as well, afaic at least 

soci 4.0.1-5 has migrated to testing yesterday. The bug should be fixed
now for a fully up-to-date Bullseye system.

Bernhard



Bug#983365: linphone-desktop: chat messages

2021-03-13 Thread Bill Blough
On Sat, Mar 13, 2021 at 04:21:02PM +0100, Dennis Filder wrote:
> Good, I just tried it with linphone 4.4.21-2, linphone-desktop 4.2.5-3
> and soci 4.0.1-5 and chat message history restoration works nicely.

That's great to hear!  Glad you got it sorted out.



Bug#983365: linphone-desktop: chat messages

2021-03-13 Thread Dennis Filder
On Wed, Mar 10, 2021 at 12:54:53PM -0500, Bill Blough wrote:

> I did respond to your email on the 7th.  Maybe it wound up in your spam
> folder?

That was indeed the case.

> I'm currently building/testing the data type patch, and hope to upload
> it to unstable today.  I'll file the unblock request once that's done.

Good, I just tried it with linphone 4.4.21-2, linphone-desktop 4.2.5-3
and soci 4.0.1-5 and chat message history restoration works nicely.

Regards,
Dennis.



Bug#983365: linphone-desktop: chat messages

2021-03-09 Thread Dennis Filder
I haven't had success in making that gitlab account.  It's probably
not possible for outsiders anymore (if it ever was).  I have not
gotten a reply yet on the linphone-users list either.

Bill has not responded to #984534 either in BTS or in private.

While looking through the linphone.org wiki I found the attached PHP
script which can be used to run your own instant messaging file
transfer server.  Maybe you could include it in your changes for the
freeze exception next to the READMEs where it can't do any harm.
Including it would be nice just to make users aware of the option.

Regards,
Dennis.


lft.php.gz
Description: application/gzip


Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-04 Thread Dennis Filder
On Thu, Mar 04, 2021 at 12:32:20AM +0100, Bernhard Schmidt wrote:

> Cool, thanks. Would you mind discussing your findings with upstream at
> https://gitlab.linphone.org/BC/public/liblinphone ? We will need a
> freeze exception for this, having this bug confirmed by upstream would
> help a lot, cherry-picking a commit from upstream would be even better.
>
> Right now I don't plan to upload src:linphone before 4.4.21-2 has
> migrated to testing, in order to have a minimum amount of changes to be
> discussed for the freeze exception.

I'll talk to BC once my account is activated.  Also I just filed
#984534 against soci with a two-line patch that would fix the issue,
too.  The only change needed here then would be updated dependency
info.

Regards,
Dennis



Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-04 Thread David Pirotte
Hi Bernhard,
DEnnis,

> > I finally found the bug: ...

Excellent!

Please make sure you also test a file transfer, which is part of the
chat message interface [I couldn't try since the chat msgs itself
didn't work ...], The file transfer functionality is absolutely
essential as well, afaic at least 

Thanks,
David


pgpXl5eoCTyc6.pgp
Description: OpenPGP digital signature


Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-03 Thread Bernhard Schmidt
Am 03.03.21 um 18:55 schrieb Dennis Filder:

Hi Dennis,

> On Sun, Feb 28, 2021 at 11:07:31PM +0100, Bernhard Schmidt wrote:
>> an updated liblinphone has been uploaded to sid yesterday. Could you
>> please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
>> report back? If it does not work you might need libsoci-core4.0 and
>> libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).
> 
> I finally found the bug: libsoci_sqlite3 sometimes returns string
> where liblinphone unconditionally expects int, long, double etc. which
> led to silent std::bad_cast exceptions.  I can't say who is actually
> to blame (I feel soci should do that conversion already as it knows
> what type the user requested, or at least not throw silently), but the
> attached patches remedy the issue through some conditional string
> conversion and make chat history actually work again in the GUI.  They
> should really have separated the sqlite3 database code better from the
> MySQL code.
> 
> I put this in two separate patches to make it easier to remove the
> changes to the code for the legacy DB migration in case it causes
> problems.

Cool, thanks. Would you mind discussing your findings with upstream at
https://gitlab.linphone.org/BC/public/liblinphone ? We will need a
freeze exception for this, having this bug confirmed by upstream would
help a lot, cherry-picking a commit from upstream would be even better.

Right now I don't plan to upload src:linphone before 4.4.21-2 has
migrated to testing, in order to have a minimum amount of changes to be
discussed for the freeze exception.

Bernhard



Bug#983365: [PATCH] Re: Bug#983365: linphone-desktop: chat messages

2021-03-03 Thread Dennis Filder
Control: tag -1 + patch upstream - help
Control: reassign -1 linphone

On Sun, Feb 28, 2021 at 11:07:31PM +0100, Bernhard Schmidt wrote:
> an updated liblinphone has been uploaded to sid yesterday. Could you
> please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
> report back? If it does not work you might need libsoci-core4.0 and
> libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).

I finally found the bug: libsoci_sqlite3 sometimes returns string
where liblinphone unconditionally expects int, long, double etc. which
led to silent std::bad_cast exceptions.  I can't say who is actually
to blame (I feel soci should do that conversion already as it knows
what type the user requested, or at least not throw silently), but the
attached patches remedy the issue through some conditional string
conversion and make chat history actually work again in the GUI.  They
should really have separated the sqlite3 database code better from the
MySQL code.

I put this in two separate patches to make it easier to remove the
changes to the code for the legacy DB migration in case it causes
problems.

Regards,
Dennis


0001-string-conversions.patch.gz
Description: application/gzip


0002-string-conversions-legacydb.patch.gz
Description: application/gzip


Bug#983365: Info received (Bug#983365: linphone-desktop: chat messages)

2021-03-02 Thread David Pirotte
Hi Bernhard,

> The easiest way to just install one or two packages from sid would
> probably be ...

Done [1] (i updated linphone-common as well. I was surprise though to
not see a new linphone and linphone-desktop, saying this because I did
see someone fixed the 'wrong version number in the prefs dialog' but
not only the version numbers are still wrong, but despite the updates
to core 4.4.21-2, the app still displays 4.4.21-1 in the 'about' dialog ..

Now, unfortunately these updates didn't solve the problem:

a-  no history is uploaded from linphone,db when opening the app,
for none of my contacts;

b-  when I write a chat msg to someone:

it displays the message in the right middle (biggest)
panel), after I  hit enter;

but if i click on another contact then 'click back' to
the contact I sent a chat msg to test, the msg is not
displayed [as if it 'disappeared', which make sense,
given a- here above - i don't think 'the fix' updates
the chat msgs db;

[ unfortunately, I can see the msg was also not delivered,
[ which could well be due to a push notification problem
[ on their (my contact) 'side' ... 

It would really be 'nice', not to say essential, that you and Dennis
(for example) could test those fixes 'between you' ...

Thanks,
David

[1] 

;; here is what I have on my laptop after the suggested updates:

ii  liblinphone++10:amd64   4.4.21-2
amd64Linphone's shared library part (supporting the 
SIP protocol)
ii  liblinphone10:amd64 4.4.21-2
amd64Linphone's shared library part (supporting the 
SIP protocol)
ii  linphone4.2.5-3 
all  SIP softphone - graphical client (transitional 
package)
ii  linphone-common 4.4.21-2
all  Shared components of the linphone SIP softphone
ii  linphone-desktop4.2.5-3 
   amd64SIP softphone - graphical client


pgpKObydD3O6p.pgp
Description: OpenPGP digital signature


Bug#983365: Info received (Bug#983365: linphone-desktop: chat messages)

2021-03-02 Thread Bernhard Schmidt
Hi David,

Am 01.03.21 um 20:24 schrieb David Pirotte:

> Thanks all for having worked on this. Sorry for the little delay in
> answering, I actually thought the packages would 'find their way' to
> bullseye, so I was (and still am) updating daily, a few times per day
> actually, but now I see you said sid, not bullseye ...
> 
>> an updated liblinphone has been uploaded to sid yesterday. Could you
>> please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
>> report back? If it does not work you might need libsoci-core4.0 and
>> libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).
> 
> I am using bullseye (n idea why reportbug says bullseye/sid), so I
> don't have the right config to pick those 2 from sid, and so many years
> I haven't done this that I forgot my 'apt/preferencesfu' to do that -
> but by all means, the bug is in bullseye, won't you make these packages
> available in bullseye?

There is a ten day migration period from sid to bullseye. If no
regression shows up th new linphone version should migrate to bullseye
about March 9th. I hope it doesn't get delayed, because on 10th the
freeze starts for real.

The easiest way to just install one or two packages from sid would
probably be

- duplicate bullseye line in /etc/apt/sources.list and replace bullseye
with sid
- apt update
- apt install liblinphone10 liblinphone++10
- disable new line from /etc/apt/sources.list
- apt update

Bernhard



Bug#983365: linphone-desktop: chat messages

2021-03-01 Thread Dennis Filder
I haven't found the bug yet, but at least somewhat cornered in
linphone-desktop/linphone-app/src/components/chat/ChatModel.cpp in
ChatModel::setSipAddress():

...
 for (auto  : mChatRoom->getHistory(0))
mEntries << qMakePair(
  QVariantMap{
{ "type", EntryType::MessageEntry },
{ "timestamp", QDateTime::fromMSecsSinceEpoch(message->getTime() * 
1000) }
  },
  static_pointer_cast(message)
);
...

The call to mChatRoom->getHistory(0) should return a list of pointers
to all messages in that chatroom (peerAddress, localAddress) to
iterate over, but it returns nothing, even though it should.

Finding that out is going to be difficult because linphone-desktop
invokes the DB code through C++ wrappers around C bindings which are
written against the C++ code in
liblinphone/-/blob/master/src/db/main-db.cpp.  I'll try next to get
the liblinphone test suite to run, and hopefully it will produce a
failure that is easier to debug.

Regards,
Dennis.



Bug#983365: Info received (Bug#983365: linphone-desktop: chat messages)

2021-03-01 Thread David Pirotte
Hello,

Thanks all for having worked on this. Sorry for the little delay in
answering, I actually thought the packages would 'find their way' to
bullseye, so I was (and still am) updating daily, a few times per day
actually, but now I see you said sid, not bullseye ...

> an updated liblinphone has been uploaded to sid yesterday. Could you
> please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
> report back? If it does not work you might need libsoci-core4.0 and
> libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).

I am using bullseye (n idea why reportbug says bullseye/sid), so I
don't have the right config to pick those 2 from sid, and so many years
I haven't done this that I forgot my 'apt/preferencesfu' to do that -
but by all means, the bug is in bullseye, won't you make these packages
available in bullseye?

Thanks,
David


pgpg5XHoH7vvv.pgp
Description: OpenPGP digital signature


Bug#983365: linphone-desktop: chat messages

2021-03-01 Thread Dennis Filder
On Sun, Feb 28, 2021 at 11:07:31PM +0100, Bernhard Schmidt wrote:
> an updated liblinphone has been uploaded to sid yesterday. Could you
> please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
> report back? If it does not work you might need libsoci-core4.0 and
> libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).

I installed the packages and they work the same as mine.  Also I
managed to get asterisk running for chat and I do see now chat
messages are added to the DB linphone.db and the UI as they are
sent/received.  I also see at certain points signs that some form of
history is being reconstructed due to lines like

[07:20:39:145][0x56499abd2e10][Warning]qrc:/ui/modules/Linphone/Chat/Chat.qml:184:14:
 qrc:/ui/modules/Linphone/Chat/Chat.qml:184:14: QML Chat: Implicitly defined 
onFoo properties in Connections are deprecated. Use this syntax instead: 
function onFoo() { ... }

being written to stdout, one for every event, i.e. the output gets
longer for every message added to the DB.  The code apparently
reconstructs the history by just playing back the events from the DB.
However, I still don't see any history of past messages in the UI
after starting /usr/bin/linphone anew, and I don't fully understand
why.  Apparently there exist two different history concepts:

* global call log: holds call entries from all encountered contacts in
  chronological order with chat messages omitted for brevity

* peer-specific call log: the same, but only for the currently shown
  contact.

* peer-specific chat log: the chat history with the currently shown
  contact.

* peer-specific call+chat log: a combination of the two previous log

* something called a "conversation" which might be the name for the
  peer-specific call+chat log UI.

I think the chat history is read back in
linphone-desktop/linphone-app/src/components/chat/ChatModel.cpp in
ChatModel::setSipAddress() with a call to ChatRoom::getHistory(0)
which should fetch the entire history for the ChatRoom participants
(peerAddres, localAddress) and insert them into the UI:

...
 for (auto  : mChatRoom->getHistory(0))
mEntries << qMakePair(
  QVariantMap{
{ "type", EntryType::MessageEntry },
{ "timestamp", QDateTime::fromMSecsSinceEpoch(message->getTime() * 
1000) }
  },
  static_pointer_cast(message)
);

  // Get calls.
  for (auto  : core->getCallHistory(mChatRoom->getPeerAddress(), 
mChatRoom->getLocalAddress()))
insertCall(callLog);
...

Notice that call history entries are inserted with insertCall(),
whereas the code for chat history entries duplicates what
ChatModel::insertMessageAtEnd() does, but apparently without updating
the UI with endInsertRows():

...
void ChatModel::insertMessageAtEnd (const shared_ptr 
) {
  int row = mEntries.count();

  beginInsertRows(QModelIndex(), row, row);

  QVariantMap map{
{ "type", EntryType::MessageEntry },
{ "timestamp", QDateTime::fromMSecsSinceEpoch(message->getTime() * 1000) }
  };
  fillMessageEntry(map, message);
  mEntries << qMakePair(map, static_pointer_cast(message));

  endInsertRows();
}
...

I have no idea if this is intentional or what will happen if I change
that code to call insertMessageAtEnd() instead.  Commit 4ece007e[1]
also updated insertMessageAtEnd(), but the corresponding code in
setSipAddress() wasn't touched.  I will try to work on this and report
back when I know more.

Regards,
Dennis.

1: 
https://gitlab.linphone.org/BC/public/linphone-desktop/-/commit/4ece007eb322cceddb9d572c688c3c553f66ee85



Bug#983365: Info received (Bug#983365: linphone-desktop: chat messages)

2021-02-28 Thread Bernhard Schmidt
Hi,

an updated liblinphone has been uploaded to sid yesterday. Could you
please try liblinphone10 and liblinphone++10 from sid (4.4.21-2) and
report back? If it does not work you might need libsoci-core4.0 and
libsoci-sqlite3-4.0 from unstable as well (4.0.1-4).

Thanks,
Bernhard



Bug#983365: Info received (Bug#983365: linphone-desktop: chat messages)

2021-02-26 Thread Dennis Filder
Okay, I do see a difference in behaviour now in sqlitebrowser: with my
soci-enabled liblinphone packages installed I see entries being added
to table ~/.local/share/linphone/linphone.db:chat_message_content and
other tables.  The timestamps in chat_message_participant also line up
perfectly with the time of installation.  I even downgraded again to
the current bullseye packages for comparison, and with them installed
nothing was added to the database when sending messages.  So compiling
that in certainly had some effect.  And it could actually mean that a
new upload of linphone-desktop can be avoided (at least for now).

I don't see the message history reappearing in the app though, but
that could be because my SIP gateway doesn't relay the messages
correctly.  I think linphone might only show in its history messages
whose reception was acknowledged by the other side.  Until then they
might be stored in the DB to be delivered once the other side becomes
reachable again.

What puzzles me a bit is that the submitter saw messages in the DB.
But maybe those were from when he (presumably) used the appimage
version.

I'll try to get asterisk to work and see if I can find out more with
that.



Bug#983365: linphone-desktop: chat messages

2021-02-26 Thread Bill Blough
Hi,

> Have you reached out to the SOCI maintainer in private already? I don't
> see a bug report on this. If we can get a targeted fix uploaded for this
> within the next days (next step of the freeze is on March 10th, with a
> migration time of 10 days right now) I will attempt to push through a
> new src:linphone upload. Do you know whether we need a new
> src:linphone-desktop upload as well?

I'm the SOCI maintainer.   Dennis did email me and explain the
situation, and I don't see an issue making the change.

I'll prepare the upload today.  If someone would please file a bug
against SOCI regarding this, I would appreciate it.

Best regards,
Bill

-- 
GPG: 5CDD 0C9C F446 BC1B 2509  8791 1762 E022 7034 CF84



Bug#983365: linphone-desktop: chat messages

2021-02-26 Thread Dennis Filder
On Fri, Feb 26, 2021 at 10:23:04AM +0100, Bernhard Schmidt wrote:

> Have you confirmed already that the whole soci/linphone dance really
> fixes this issue?

No.  I installed my liblinphone* packages with soci support and I
don't see a difference in behaviour yet.  I must state though that I
haven't been able to get chat to work at all yet, so it might mean
nothing.  I may have to set up an asterisk server.

> Do you know whether we need a new src:linphone-desktop upload as
> well?

After installing the liblinphone* packages libsoc_core showed up in
the output of "ldd /usr/bin/linphone" and it started without crashing.
I don't know if any subtle template magic could cause problems.

I keep stumbling into segfaults both in Qt and liblinphone and I can
never tell if they are due to something I changed or just lingering
bugs.  I'll keep looking into this throughout the weekend and will
post any new findings.

Regards,
Dennis.



Bug#983365: linphone-desktop: chat messages

2021-02-26 Thread Bernhard Schmidt
Am 26.02.21 um 15:19 schrieb Bill Blough:

Hi Bill,

> Hi,
> 
>> Have you reached out to the SOCI maintainer in private already? I don't
>> see a bug report on this. If we can get a targeted fix uploaded for this
>> within the next days (next step of the freeze is on March 10th, with a
>> migration time of 10 days right now) I will attempt to push through a
>> new src:linphone upload. Do you know whether we need a new
>> src:linphone-desktop upload as well?
> 
> I'm the SOCI maintainer.   Dennis did email me and explain the
> situation, and I don't see an issue making the change.
> 
> I'll prepare the upload today.  If someone would please file a bug
> against SOCI regarding this, I would appreciate it.

Thanks, I've opened Bug#983572 for this.

Bernhard



Bug#983365: linphone-desktop: chat messages

2021-02-26 Thread Bernhard Schmidt
Hi Dennis,

thanks a lot for debugging this! BTW, linphone is in desperate need of
co-maintainers :-)   That's a lot more useful than complaining about the
package not being tested (it is, but I do not know anyone using the Chat
feature, and I certainly don't).

Honestly I don't know why there is ENABLE_DB_STORAGE=NO, it sneaked in
during the packaging attempts. Possibly because libsoci wasn't usable
without the C++11 option you found.

Have you reached out to the SOCI maintainer in private already? I don't
see a bug report on this. If we can get a targeted fix uploaded for this
within the next days (next step of the freeze is on March 10th, with a
migration time of 10 days right now) I will attempt to push through a
new src:linphone upload. Do you know whether we need a new
src:linphone-desktop upload as well?

Have you confirmed already that the whole soci/linphone dance really
fixes this issue?

Bernhard

Am 25.02.21 um 18:58 schrieb Dennis Filder:
> Control: tag -1 + confirmed sid bullseye
> 
> I looked into this the past days, and I think this is actually a bug
> in d/rules in src:linphone.  I'm beginning to suspect that this is due
> to this line:
> 
>   -DENABLE_DB_STORAGE=NO \
> 
> Apparently the code for the once separate chat history and call
> history DBs has been merged into a single DB with special logic to
> handle the migration -- since I have no files from a previous version
> linphone-desktop 4.2.5 here does not even create anymore the sqlite3
> database linphone.db in ~/.local/share/linphone/ that David mentions,
> only call-history.db and friends.db are created (which matches the
> source code).  However, if the database storage isn't configured and
> compiled in then that new database is not going to work of course.
> Was there a specific reason for disabling this?  I could get
> linphone-4.4.21 to build with -DENABLE_DB_STORAGE=YES, but I had to
> first build+install a version of libsoci-dev that was compiled with
> -DSOCI_CXX11=YES.  I'll contact the soci maintainer to see if he can
> change that in time.
> 
> linphone-4.4.21/cmake/FindSoci.cmake calls the soci support
> experimental, but the official appimage ships with both libsoci_core.0
> and libsoci_sqlite3.0, so it should be stable enough for us, too.
> That warning is probably outdated.  I attached a diff of the linked-in
> shared libraries in Debian's and the AppImage's /usr/bin/linphone
> (4.2.5) to illustrate where else we deviate.
> 
> Another issue I ran into: during dh_auto_configure a CMake macro tries
> to invoke "git describe" to look up the tag for the build's branch.
> Setting GIT_EXECUTABLE to a shell script that emits the expected tag
> worked around that.  I used $(shell pwd) there to point to the script,
> but I don't know if this is the right way to do it.  Fix it if it's
> wrong.
> 
> I'll keep digging into this and let you know if I learn something new.
> 
> Regards,
> Dennis
> 



Bug#983365: linphone-desktop: chat messages

2021-02-25 Thread Dennis Filder
The file rules.patch got mangled in transit.  Attached is the
integrous version.


rules.patch.gz
Description: application/gzip


Bug#983365: linphone-desktop: chat messages

2021-02-25 Thread Dennis Filder
Control: tag -1 + confirmed sid bullseye

I looked into this the past days, and I think this is actually a bug
in d/rules in src:linphone.  I'm beginning to suspect that this is due
to this line:

-DENABLE_DB_STORAGE=NO \

Apparently the code for the once separate chat history and call
history DBs has been merged into a single DB with special logic to
handle the migration -- since I have no files from a previous version
linphone-desktop 4.2.5 here does not even create anymore the sqlite3
database linphone.db in ~/.local/share/linphone/ that David mentions,
only call-history.db and friends.db are created (which matches the
source code).  However, if the database storage isn't configured and
compiled in then that new database is not going to work of course.
Was there a specific reason for disabling this?  I could get
linphone-4.4.21 to build with -DENABLE_DB_STORAGE=YES, but I had to
first build+install a version of libsoci-dev that was compiled with
-DSOCI_CXX11=YES.  I'll contact the soci maintainer to see if he can
change that in time.

linphone-4.4.21/cmake/FindSoci.cmake calls the soci support
experimental, but the official appimage ships with both libsoci_core.0
and libsoci_sqlite3.0, so it should be stable enough for us, too.
That warning is probably outdated.  I attached a diff of the linked-in
shared libraries in Debian's and the AppImage's /usr/bin/linphone
(4.2.5) to illustrate where else we deviate.

Another issue I ran into: during dh_auto_configure a CMake macro tries
to invoke "git describe" to look up the tag for the build's branch.
Setting GIT_EXECUTABLE to a shell script that emits the expected tag
worked around that.  I used $(shell pwd) there to point to the script,
but I don't know if this is the right way to do it.  Fix it if it's
wrong.

I'll keep digging into this and let you know if I learn something new.

Regards,
Dennis
diff --git a/linphone-4.4.21/debian/git.sh b/linphone-4.4.21/debian/git.sh
new file mode 100755
index 000..2d1c3ec
--- /dev/null
+++ b/linphone-4.4.21/debian/git.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+#echo 4.4.12
+#f=$PWD/debian/git.sh
+f=$0
+g=${f%/debian/git.sh}
+h=${g##*/}
+i=${h##*-}
+#echo "$f $g $h"
+echo "$i"
diff --git a/linphone-4.4.21/debian/rules b/linphone-4.4.21/debian/rules
index 74476b0..9fa407f 100755
--- a/linphone-4.4.21/debian/rules
+++ b/linphone-4.4.21/debian/rules
@@ -2,6 +2,17 @@

 export DEB_BUILD_MAINT_OPTIONS = hardening=+all

+# The macro bc_compute_lib_version (among others) from
+# /usr/share/bctoolbox/cmake/bctoolboxCMakeUtils.cmake expects the
+# .git directory to be available.  We fool it with a shellscript
+# debian/git.sh that emits the version number hard-coded.
+CONFIGURE_ARGS += -DGIT_EXECUTABLE=$(shell pwd)/debian/git.sh
+
+# this enables the unified call+chat database; it requires sqlite3 and
+# a version of libsoci-dev built with C++11 support (libsoci-dev 4.0.1-3
+# doesn't have it yet).
+CONFIGURE_ARGS += -DENABLE_DB_STORAGE=YES
+
 %:
 	dh $@ --buildsystem=cmake

@@ -14,7 +25,6 @@ override_dh_auto_configure:
 		-DENABLE_ADVANCED_IM=NO \
 		-DENABLE_LIME=NO \
 		-DENABLE_LIME_X3DH=NO \
-		-DENABLE_DB_STORAGE=NO \
 		-DENABLE_UNIT_TESTS=NO \
 		-DENABLE_STATIC=NO \
 		$(CONFIGURE_ARGS)
--- ldd-bullseye-4.2.5.txt	2021-02-25 18:06:16.143870152 +0100
+++ ldd-appimage-4.2.5.txt	2021-02-25 18:06:16.139870152 +0100
@@ -1,158 +1,99 @@
 /lib64/ld-linux-x86-64 (ADDR)
-libantlr3c-3.4
-libaom
 libasound
 libasyncns
 libavcodec
 libavutil
+libbcg729
 libbctoolbox
 libbelcard
 libbellesip
 libbelr
-libblkid
-libbrotlicommon
-libbrotlidec
 libbsd
+libbv16
 libbzrtp
 libc
-libcairo
-libcairo-gobject
-libcodec2.9
-libcom_err
-libdatrie
-libdav1d
+libcap
 libdbus-1
+libdecaf
 libdl
-libdouble-conversion
-libdrm
-libexpat
-libffi
 libFLAC
-libfontconfig
-libfreetype
-libfribidi
 libgcc_s
 libgcrypt
-libgdk_pixbuf-2.0
-libgio-2.0
 libGL
 libGLdispatch
-libGLEW.1
+libGLEW.0
 libglib-2.0
 libGLX
-libgmodule-2.0
-libgobject-2.0
-libgomp
 libgpg-error
-libgraphite2
 libgsm
-libgssapi_krb5
-libharfbuzz
+libgthread-2.0
+libICE
 libicudata
 libicui18n
 libicuuc
-libk5crypto
-libkeyutils
-libkrb5
-libkrb5support
+libjpeg
+liblime
 liblinphone
 liblinphone++
 liblz4
 liblzma
 libm
 libmbedcrypto
 libmbedtls
 libmbedx509
-libmd
-libmd4c
 libmediastreamer
-libmfx
-libmount
-libmp3lame
 libnsl
-libnspr4
-libnss3
-libnssutil3
-libnuma
 libogg
-libOpenCL
-libopenjp2
 libopus
 libortp
-libpango-1.0
-libpangocairo-1.0
-libpangoft2-1.0
 libpcre
-libpcre2-16
-libpcre2-8
-libpixman-1
-libplc4
-libplds4
-libpng16
 libpthread
 libpulse
-libpulsecommon-14.1
+libpulsecommon-10.0
+libQt5Concurrent
 libQt5Core
 libQt5DBus
 libQt5Gui
 libQt5Network
 libQt5Qml
-libQt5QmlModels
 libQt5Quick
 libQt5QuickControls2
 libQt5QuickTemplates2
 libQt5Svg
+libQt5TextToSpeech
 libQt5Widgets
 libresolv
-librsvg-2
 librt
 libselinux
-libshine
-libsnappy
+libSM
 libsndfile
-libsoxr
+libsoci_core.0
+libsoci_sqlite3.0
 libspeex
 libspeexdsp
 libsqlite3
 libsrtp2
 

Bug#983365: linphone-desktop: chat messages

2021-02-24 Thread David Pirotte
Hello Bernhard,

> Thanks for your report. Unfortunately I'm extremely swamped for the
> next couple of weeks. I have also never used the Chat feature. For
> this reason I'm tagging this bug as "help".

I hope you or someone else find the time to fix this bug before it's to
late to make it to stable bullseye, but as it is, afaic, it is unusable
for one of its main functionality: to send and receive messages - i use
it (the upstream version, the debian version is unusable) professionally
daily ...

So, I don't use it, I can't use it, I can't risk to loose msgs, and
this debian version looses all messages, those you send are not
registered in the db, and those we receive are not even displayed in
the current session panel, only as a notification popup, which last a
few second: if you are not in front of the machine, you don't even
know someone is contacting you, and if you are, but the message is
long, no way you can 'remember the exact msg words' once the
notification disappear from the screen ...

I used it to try and report the bug(s), but immediately
switched to upstream appimage 4.2.5, which at least works fine
for chat messages

> Two short questions:
> In Bug#983369 a few minutes later you wrote the date in the history is
> wrong, although in this bug it reads like you cannot display the
> history at all. Which one is correct?

before i answer these two quiz, please allow me to suggest
that you create a linphone account, and try, ask a relative
or another debian maintainer to create an account and try
chat msgs exchange, calls ... it seems to me you did not even
try the app (no pun, just reading you gave me this impression)

All bugs report are correct - it seems to me that you are not a
linphone user :) - which is fine if true, no problem. So, the most
important panel (in size and function), the middle right 'panel' in
linphone, is used to show in/out messages, but also to report
in/out calls, wether successful or not ...

It always mentions a wrong date, always the day before the event
occurs, no matter what the event is, in/out msgs or in/out call,
successful or not ... again, it seems you did not even tried linphone
(nor debian, not upstream image), not even once ... :)

this bug, as reported, is an upstream bug 'as well', not a
debian bug ...

> Did you start a fresh linphone profile or is the sqlite database
> upgraded from an older version? Could you (for a test) move it away to
> have it recreated?

No, i can't do that, the linphone.db file is essential to linphone, and
properly used by linphone (apppimage) upstream - i don't think this
will solve anything (sorry)
]
> I fully understand choosing an RC severity, but I'm at a loss
> debugging this and I lack the time to dig into it, so this bug might
> make linphone-desktop miss the Bullseye release unless someone steps
> up to debug this.

I hope you or someone else solve this bug, the app is, as it is in
debian bullseye, unusable, it is actually 'risky' to use it, imho ...

David


pgpHQ_AWF8vQJ.pgp
Description: OpenPGP digital signature


Bug#983365: linphone-desktop: chat messages

2021-02-23 Thread Bernhard Schmidt
Control: tags -1 help

Dear David,

> 1- chat messages (history) are not displayed when I launch the app,
> although I can see they are in the .local/share/linphone/linphone.db
> file (using sqliteb or sqlitebrowser);
> 
> 2- when someone sends me a message, it 'pops' a notification with the
> message text (even if I am in front of the app) but the message is not
> displayed by the application itself, nor the little numbered circle that
> appears (on the appimage 4.2.5 version, to compare) i the left panel,
> in(on top of) the user 'entry', nor in the user chat 'room'.
> 
> I also verified that the message isn't added in the chat_message_content
> of the linphone.db table, and i can see the following 'trace' in the
> terminal i used to launchh the app:
> 
> [22:11:12:653][0x1ff9eb0][Info]components/sip-addresses/SipAddressesModel.cpp:485:
>  "Update (`sip:sender.na...@sip.linphone.org`, 
> `sip:my.n...@sip.linphone.org`) from chat message."

Thanks for your report. Unfortunately I'm extremely swamped for the next
couple of weeks. I have also never used the Chat feature. For this
reason I'm tagging this bug as "help".

Two short questions:
In Bug#983369 a few minutes later you wrote the date in the history is
wrong, although in this bug it reads like you cannot display the history
at all. Which one is correct?

Did you start a fresh linphone profile or is the sqlite database
upgraded from an older version? Could you (for a test) move it away to
have it recreated?

I fully understand choosing an RC severity, but I'm at a loss debugging
this and I lack the time to dig into it, so this bug might make
linphone-desktop miss the Bullseye release unless someone steps up to
debug this.

Bernhard



Bug#983365: linphone-desktop: chat messages

2021-02-22 Thread David Pirotte
Package: linphone-desktop
Version: 4.2.5-3
Severity: grave
Justification: causes non-serious data loss

Dear Maintainer,

1- chat messages (history) are not displayed when I launch the app,
although I can see they are in the .local/share/linphone/linphone.db
file (using sqliteb or sqlitebrowser);

2- when someone sends me a message, it 'pops' a notification with the
message text (even if I am in front of the app) but the message is not
displayed by the application itself, nor the little numbered circle that
appears (on the appimage 4.2.5 version, to compare) i the left panel,
in(on top of) the user 'entry', nor in the user chat 'room'.

I also verified that the message isn't added in the chat_message_content
of the linphone.db table, and i can see the following 'trace' in the
terminal i used to launchh the app:

[22:11:12:653][0x1ff9eb0][Info]components/sip-addresses/SipAddressesModel.cpp:485:
 "Update (`sip:sender.na...@sip.linphone.org`, `sip:my.n...@sip.linphone.org`) 
from chat message."

Thanks,
David


-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-3-amd64 (SMP w/8 CPU threads)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages linphone-desktop depends on:
ii  libbctoolbox1  4.4.13-2
ii  libbelcard14.4.13-2
ii  libc6  2.31-9
ii  libgcc-s1  10.2.1-6
ii  liblinphone++104.4.21-1
ii  liblinphone10  4.4.21-1
ii  libmediastreamer11 1:4.4.21-3
ii  libqt5core5a   5.15.2+dfsg-4
ii  libqt5dbus55.15.2+dfsg-4
ii  libqt5gui5 5.15.2+dfsg-4
ii  libqt5network5 5.15.2+dfsg-4
ii  libqt5qml5 [qtdeclarative-abi-5-15-2]  5.15.2+dfsg-4
ii  libqt5quick5   5.15.2+dfsg-4
ii  libqt5quickcontrols2-5 5.15.2+dfsg-2
ii  libqt5svg5 5.15.2-2
ii  libqt5widgets5 5.15.2+dfsg-4
ii  libstdc++6 10.2.1-6
ii  linphone-common4.4.21-1
ii  qml-module-qt-labs-platform5.15.2+dfsg-2
ii  qml-module-qtgraphicaleffects  5.15.2-2
ii  qml-module-qtquick-controls5.15.2-2
ii  qml-module-qtquick-controls2   5.15.2+dfsg-2
ii  qml-module-qtquick-dialogs 5.15.2-2
ii  qml-module-qtquick-layouts 5.15.2+dfsg-4
ii  qml-module-qtquick-window2 5.15.2+dfsg-4
ii  qml-module-qtquick25.15.2+dfsg-4

linphone-desktop recommends no packages.

linphone-desktop suggests no packages.

-- no debconf information