Re: [SailfishDevel] Qt Network: "Network access is disabled" after network change

2017-05-02 Thread Lorn Potter


On 01/05/17 19:16, Slava Monich wrote:
> Basically, QNetworkAccessManager is sometimes stuck in NotAccessible
> state after switching from mobile data to wifi.

> My theory was that
> configurationChanged, onlineStateChanged and networkSessionStateChanged
> (queued) signals from the past were getting mixed with the current state
> (which was checked directly) in such a way that
> QNetworkAccessManagerPrivate online state remained false even though
> connman service was getting successfully connected.

This is all from memory, but...

The cell network 'disconnected' can come in after wifi has been
established, but before all wifi settings are available so QNAM
configuration cannot be 'active'. connman manager can send a 'services
updated' signal before the service object has actually been updated
internally. so the bearer plugin goes to check it and the properties of
that service are not yet updated.

and then, wpa/connman can also 'remove' an AP when it really is around,
even in the middle of connecting.

As well, connman's 'ready' and 'online' are both equivalent to
QNAMConfiguration::Active. 'ready' does not guarantee that internet can
be reached, and 'online' check can easily fail.


I am sure there are other intricacies I am forgetting, but the
interactions are quite complicated, so it's not an easy bug to fix.
Even if you remove the whole 'manually setting NetworkAccessible' to
notAccessible.
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

Re: [SailfishDevel] Qt Network: "Network access is disabled" after network change

2017-05-02 Thread Lorn Potter
On Monday, May 1, 2017 7:16:34 PM AEST Slava Monich wrote:
> but that didn't quite fix it. It does eliminate one scenario (described in
> the merge request) but there must be something else there. The whole
> connman bearer plugin thing looks generally prone to race conditions, I
> would've done it differently but we have what we have.

I don't think 'race' is the right term for what is happening.

The whole networkAccessible thing was for Symbian, so the network could 
manually be put into a not accessable mode, when the network was actually 
still accesible. It was never really intended to be "am I online" check for 
developers/apps. Symbian had network access per app. Other platforms do not 
have this concept, it's the system that has network access.

The 'race' issue is really just that connman is async and QNAM basically 
expects low level to be synchronous and that settings are always instantly 
available when the QNAM object is contructed. connman doesn't work like that. 
and sometimes, connman and wpa_supplicant are just plain buggy as well. As 
well, connman has a concept of 'network working' and 'internet is working', 
both of which are buggy.

So things are happening in an unexpected order sometimes. To top it off, all 
these settings go through dbus. so all the wireless AP's that are nearby go 
though this and need to be handled in some way. So the dbus is getting pounded 
at times.
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

Re: [SailfishDevel] Sip on Jola Phone

2015-11-12 Thread Lorn Potter
On 13/11/2015 3:25 am, Thomas B. Rücker wrote:
> Hi,

>
> SIP was on Jolla's roadmap, but was never delivered. I expect it got
> dropped, but nobody bothered to update their public roadmap. It is not a
> feature that would generate value for Jolla in the form of operator or
> manufacturer deals, so I don't expect them to bother. If you need SIP
> urgently, as you say, get a different device, as there is no promise and
> no outlook on a change in situation.
>
> Please note that I don't think talking about platform features and user
> problems is on topic here. So let's EOD. If there's any change you'll
> see it in the TJC item.

SIP is still on the Jolla roadmap, although I am not aware of the 
current status. I think it's a matter of priorities.




-- 
Lorn Potter
Sensors / Connectivity
Jolla / llornkcor technologies
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org


Re: [SailfishDevel] QNetworkAccessManager is losing connection upon switching between wifi and mobile

2015-11-11 Thread Lorn Potter
Hi Alex,

Having tested this, it does seem to be a bug in that when connecting to wlan, 
QNAM’s networkAccessibility sometimes will go to NotAccessible, but then go to 
Accessible when wlan connects. or sometimes it won’t even go to NotAccessible 
then Accessible when wlan is connected.

You should be able to track QNAM through its networkAccessibilty property. it 
should follow the online state, unless you specifically set it to NotAccessible.

QNAM uses QNetworkConfiguration internally, and it should automatically switch 
this to the current Active configuration.


-
Lorn

> On 10 Nov 2015, at 10:37 am, Alexander Ladygin  wrote:
> 
> Hey!
> 
> I've got an issue: QNetworkAccessManager is losing connection upon switching 
> between wifi and mobile:( What exactly should i do/update to make it work 
> properly? Maybe need to change network configuration? Why it is not handled 
> by platform?
> Thanks.
> 
> Alex
> ___
> SailfishOS.org Devel mailing list
> To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

Re: [SailfishDevel] QNetworkAccessManager is losing connection upon switching between wifi and mobile

2015-11-11 Thread Lorn Potter

> On 11 Nov 2015, at 8:09 pm, Lorn Potter <lorn.pot...@jolla.com> wrote:
> 
> Hi Alex,
> 
> Having tested this, it does seem to be a bug in that when connecting to wlan

I should have specified here when already connected to mobile data and then 
connecting to wlan without first disconnecting mobile data.


> , QNAM’s networkAccessibility sometimes will go to NotAccessible, but then go 
> to Accessible when wlan connects. or sometimes it won’t even go to 
> NotAccessible then Accessible when wlan is connected.
> 
> You should be able to track QNAM through its networkAccessibilty property. it 
> should follow the online state, unless you specifically set it to 
> NotAccessible.
> 
> QNAM uses QNetworkConfiguration internally, and it should automatically 
> switch this to the current Active configuration.
> 
> 
> -
> Lorn
> 
>> On 10 Nov 2015, at 10:37 am, Alexander Ladygin <fake...@gmail.com> wrote:
>> 
>> Hey!
>> 
>> I've got an issue: QNetworkAccessManager is losing connection upon switching 
>> between wifi and mobile:( What exactly should i do/update to make it work 
>> properly? Maybe need to change network configuration? Why it is not handled 
>> by platform?
>> Thanks.
>> 
>> Alex
>> ___
>> SailfishOS.org Devel mailing list
>> To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org
> 

___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

Re: [SailfishDevel] QNetworkAccessManager is losing connection upon switching between wifi and mobile

2015-11-11 Thread Lorn Potter

> On 12 Nov 2015, at 9:50 am, Aaron McCarthy  wrote:
> 
> Hi,
> 
> On Wed, 11 Nov 2015 16:20:11 Alexander Ladygin wrote:
>> I probably didn't make myself clear =(
>> 1) wifi is turned on
>> 2) app is launched, i can download files with QNAM
>> 3) app is still launched, i turn off the wifi (mobile network activated)
>> 4) i can no longer download any files. No network errors, but QNAM's reply
>> returns empty files
> 
> Does the reply emit the finished() signal? I ask because I would expect the 
> reply to either finish with an error or hang attempting to use the previous 
> connection.
> 
> You could try using tcpdump or strace to check what QNAM is actually doing at 
> the socket level. It might give more of a clue as to what is going wrong.
> 

It’s not at that level.

I’ve been working on this today. I haven’t created a bug about it yet.

There are a few things going on in QNAM with regards to it’s NetworkSession and 
timing of when configurations become active and non active.

-
Lorn
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

Re: [SailfishDevel] QtSensors SensorGesture

2015-06-24 Thread Lorn Potter
On 19/06/15 05:07, Fab wrote:
 Hello everybody !

 This is my first post (and first SailfishOS app), so be indulgent :)

 I try to use SensorGesture within an app for the Jolla. I particularly
 want to use the shake gesture. I import for this QtSensors 5.x.

 But onDetected signal is never raised. availableGestures seems to be
 empty, at least.

 Am I missing something ?

 Thanks for the answer.

I have found that these ad-hoc sensor gestures are rather device 
specific. Shake should work ok, as it is fairly generic.

I have written sailfish/jolla phone specific ones that also use the 
gyroscope but have not yet integrated them into the image.

https://github.com/mer-qt/qtsensors/pull/4
and upstream:
https://codereview.qt-project.org/#/c/93172/

I can push these if more people are interested.


___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org


Re: [SailfishDevel] How can I check if there's internet connection already on? To avoid extra connection request dialogs

2015-01-25 Thread Lorn Potter
Hi Artem,
It depends on if this is for a harbour app or not, as some of the 
middleware connectivity stack API is not yet available for harbour apps.

You could (not harbour app) use libconnman-qt, which comes with a qml 
API. This is my first choice.

You could use the qml dbus plugin (not sure if this is allowed in 
harbour) yourself to hook up to connman dbus API.

Or you could use the QNetworkConfigurationManager API from c++.


We really do need a better public connectivity API available. I will try 
to get libconnman-qt available for harbour at some point.


-
Lorn


On 24/01/15 23:14, Artem Marchenko wrote:
 Hi All

 I have some data that needs to be communicated over network, but can
 wait for a while: updating feeds in the background, synching high
 scores, sending stats, etc.

 These things need to be communicated at some point, but can easily be
 delayed without any big harm and I don't want to pop a multitude of
 Connect me! dialogs in front of the users without much need.

 Can I somehow check whether internet connection is already established
 and/or monitor connection state to notice when it's on?

 Cheers,
 Artem.

 P.S.
 In MeeGo (and I think in iOS nowadays too) there was a way to tell to OS
 that you want to communicate over net some time soon and OS was
 bundling such requests to happen together. There isn't anything like
 that in Sailfish OS, is there?

 --
 Artem Marchenko
 http://agilesoftwaredevelopment.com
 http://twitter.com/AgileArtem

___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org


Re: [SailfishDevel] SailfishOS as an OS/platform in Qt

2014-12-06 Thread Lorn Potter

On 5 Dec 2014, at 2:38 am, Alejandro Exojo s...@badopi.org wrote:

 
 Then I searched a bit in the branch of the mer-qt/qtbase repo. I see you 
 don't 
 use any mkspec for SailfishOS or Jolla, right? That's where I thought you 
 might have it, and where I think it could be. Blackberry sets there the 
 QMAKE_PLATFORM and Q_OS_BLACKBERRY.

Tizen also and their own branch even.
 
There are also quite a few other devices that have their own mkspec, so there 
is precedence for supporting a sailfish/jolla platform mkspec.
 

~/depot/qt/qt5/qtbase/mkspecs/devices $ [tizen] ls
blackberry-playbook-armle-v7-qcc/   linux-archos-gen8-g++/  
linux-beagleboard-g++/  linux-mipsel-broadcom-97425-g++/
linux-snowball-g++/
blackberry-playbook-armv7le-qcc/linux-arm-amlogic-8726M-g++/
linux-g++-tizen/linux-rasp-pi-g++/  
linux-tegra2-g++/
blackberry-playbook-x86-qcc/linux-arm-hisilicon-hix5hd2-g++/
linux-imx53qsb-g++/ linux-sh4-stmicro-ST7108-g++/
common/ linux-arm-trident-pnx8473-g++/  
linux-imx6-g++/ linux-sh4-stmicro-ST7540-g++/



 
 Yes, yes. I know there is a solution: pass a parameter to the qmake 
 invocation. Store the invocation flag on the RPM packaging for final 
 deployment, and maybe a .pro.shared file for development. That's what Puzzle 
 Master has now too. Still I think there is some value in having this sorted 
 out in a more general way, specially given that you'll want people to also 
 distinguish a build for the Jolla phone or the Jolla tablet.
 
Well, this one is easy. Tablet isn't arm based. :)

So far, I don't think Jolla has actually needed it's own mkspec, and using the 
defaults is working ok.


I'm not against the idea and would probably +2 any qt-project MR's, but then 
Jolla would have to use it in their builds.
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org


Re: [SailfishDevel] App rejected...

2014-04-28 Thread Lorn Potter

On 29 Apr 2014, at 7:08 am, Peter Pykäläinen peter.pykalai...@gmail.com wrote:

 Just got my app rejected due to:
 
 sorry for rejecting your update, but it causes too high power consumption. 
 It seems that app doesn't go to idle state when device does. How to measure 
 power consumption by yourself you can find here: 
 https://together.jolla.com/question/13243/my-app-got-rejected-to-store-because-of-high-power-consumption-how-to-debug-problems/
 
 Thank you for understanding.
 
 I have a QML Timer to monitor some activity in 1 second interval.
 I have been strugeling to find a way to get Qt5SystemInfo to expose me when 
 the device is locked so I could stop the timer and then start it again when 
 the device is unlocked.
 
 Good ideas to overcome this issue are mostly welcome.

Might try using QtDBus to mce like this:

https://github.com/nemomobile/connectionagent/blob/master/connd/wakeupwatcher.cpp
https://github.com/nemomobile/connectionagent/blob/master/connd/wakeupwatcher.cpp
___
SailfishOS.org Devel mailing list


Re: [SailfishDevel] QML DeviceInfo

2014-04-28 Thread Lorn Potter

On 29 Apr 2014, at 5:09 am, Peter Pykäläinen peter.pykalai...@gmail.com wrote:

 Hi,
 
 any idea on how to use QML DeviceInfo on Sailfish?
 I have been searching for a solution to get the event when device screen is
 locked (onLockStatusChanged), but apparently the imports are not working /
 not allowed.

DeviceInfo no longer has that functionality in Qt 5.

Try something like this:
https://github.com/nemomobile/connectionagent/blob/master/connd/wakeupwatcher.cpp
https://github.com/nemomobile/connectionagent/blob/master/connd/wakeupwatcher.h


___
SailfishOS.org Devel mailing list


Re: [SailfishDevel] Adding other sensors

2014-04-28 Thread Lorn Potter

On 28 Apr 2014, at 11:10 am, Neel neeldsha...@gmail.com wrote:

 Hi,
 
 What do you people think about adding sensors like temperature, humidity, 
 pressure etc.? I heard that iOS is doing so already with the next version of 
 the mobile devices.
 
 I joined the group just a couple of days back so don't know if this was 
 something already discussed.

I think you'd have to use TOH for something like that to start with, or using 
sailfish on android.

kernel/android sensord would need to access them. (depends on version)

Then sensorfw would need to get modified to add those sensors.
Then QtSensors would need humidity sensor added.

Not too difficult if there is hardware.

___
SailfishOS.org Devel mailing list


Re: [SailfishDevel] QMagnetometer info from Jolla

2014-04-07 Thread Lorn Potter

Hi Robin,

I just tested the mag sensor on 1.0.4.20 using a show_magneticflux 
example app, which uses QMagnetometer and it seems to be working.


There were some eariler version of sailfish that did not have a working 
compass/mag, but these were fixed. Odd that compass works but mag does not.

What version of sensorfw is installed?

Perhaps you could email me the journal logs as well?

Thanks-
Lorn

On 07/04/14 01:32, Robin Watson wrote:

Hi,
Sorry I got the anticipated magnitude wrong there - the observed 
values (the order of tens of uT) seem OK actually, but they never 
change, so I still have some sort of problem with QMagnetometer.

Regards,
Robin.

2014-04-06 17:15 GMT+02:00 Robin Watson robin.james.wat...@gmail.com 
mailto:robin.james.wat...@gmail.com:


Hi,
I am having trouble getting any sensible magnetometer information
from my Jolla. I create a QMagnetometer instance, and start it,
and it triggers readingChanged() regularly. But when I examine the
QMagnetometerReading values, they never change, and are not
sensible magnetic field values. (I get around 10^-5 for each of x,
y and z, whereas I would expect the order of 40-50 nT for the
magnitude).

Using QCompass and QCompassReading, I can get sensible compass
azimuth data - so the device magnetometer is presumably
functioning OK. I can also get accelerometer data OK.

My Jolla runs Sailfish 1.0.4.20, and I'm using Qt 5.1 for Mer.

Is the QMagnetometer sensor something that is just not working
yet? If not, when can we expect this feature?

Thanks and regards,
Robin.





___
SailfishOS.org Devel mailing list


___
SailfishOS.org Devel mailing list


Re: [SailfishDevel] Listening to Connman DBUS signals

2014-01-23 Thread Lorn Potter

On 23/01/2014, at 2:18 AM, Julius Loman l...@kyberia.net wrote:

 Hi
 
 this is for sure a beginners question, but I hope somebody can help me to sort
 it out. I want to listen to connman dbus events to determine connection 
 changes
 (I'm interested in receiving signal as soon as device connects to particular
 WLAN network).
 
 Using some examples I was able to capture dbus events on my KDE desktop 
 (albeit
 not connman related), but same code for SailfishOS does nothing. I guess my
 understanding of Dbus or QtBus is bad :)
 
 Here is my piece of code:
 
 #include wifimonitor.h
 #include QtDBus
 
 int main(int argc, char *argv[])
 {
QCoreApplication a(argc, argv);
WifiMonitor* receiver = new WifiMonitor;
 
qDebug()  Starting dbus monitor;
QDBusConnection system = QDBusConnection::systemBus();
if (!system.isConnected())
{
qFatal(Cannot connect to the D-Bus session bus.);
return 1;
}
system.connect(,
   /net/connman/technology/wifi,
   net.connman.Technology,
   PropertyChanged,
   receiver,
   SLOT(propertyChanged(const QDBusObjectPath))
   );

try something like this:

system.connect(net.connman,
  /net/connman/technology/wifi,
  net.connman.Technology,
  PropertyChanged,
  receiver,
  SLOT(propertyChanged(QString,QDBusVariant))
  );


 
return a.exec();
 }
 
  wifimonitor.h 
 
 #ifndef WIFIMONITOR_H
 #define WIFIMONITOR_H
 
 #include QObject
 #include QtDBus
 
 class WifiMonitor : public QObject
 {
Q_OBJECT
 public:
explicit WifiMonitor(QObject *parent = 0);
 
 signals:
 
 public slots:
void propertyChanged(const QDBusObjectPath in);
 };
 
 #endif // WIFIMONITOR_H
 
  wifimonitor.cpp 
 
 #include wifimonitor.h
 #include QtDBus
 
 WifiMonitor::WifiMonitor(QObject *parent) :
QObject(parent)
 {
 }
 
 void WifiMonitor::propertyChanged(const QDBusObjectPath in)
 {
qDebug()  DBus signal received;
qDebug()  PropertyChanged, ObjectPath:   in.path();
 }
 
 
 Thanks
 Julius
 
 -- 
 
 [ Julius Loman ][ l...@kyberia.net ][ http://lomo.kyberia.net ][ icq:35732873 
 ]
 ___
 SailfishOS.org Devel mailing list

Lorn Potter
QtSensors/ Connectivity
llornkcor technologies / Jolla Mobile

___
SailfishOS.org Devel mailing list


Re: [SailfishDevel] SDK and Harbour news

2013-11-21 Thread Lorn Potter

On 21/11/13 10:50 PM, Robin Burchell wrote:

Hi Artem,

On Thu, Nov 21, 2013 at 1:41 PM, Artem Marchenko
artem.marche...@gmail.com wrote:

Thanks for the update, Lekku

I, not L :-)


Will the apps violating these rules, but currently approved or submitted and
under QA still work fine for the launch? And will users get proper update
notifications when you change package name from e.g. flashlight to
com.iamcool.flashlight and update icon to 86x86?

Any update will trigger an update notification in store as far as I know.


What about the apps that are to be submitted today-tomorrow? Do you know
when this will be a FAQ will happen and since when shall it be enforced
(rather than just recommended)?

First draft was written yesterday, it might take a little longer while
we nail out a few final things. Not too long I'd hope.


*QML API and Shared libraries*
What about standard Qt5 modules such as qt5-qtdeclarative-systeminfo and
qt5-qtgraphicaleffects
Can I still Require them in .yaml/.spec to guarantee that device will
install them or shall we bundle them in manually somehow?

You will still need to specify your requirements. Note: not everything
with a Qt in the name is necessarily supported. I'll make sure a
full list will come around the same time as the FAQ/with the FAQ.

In particular, as I understand it, QtSystemInfo is not yet API/ABI
stable upstream (Lorn, please correct me if I'm wrong...), so we are
unable to offer support for it at this time.


QtSystemInfo is not yet officially released from upstream, not stable 
and is currently undergoing a change in API. :)



Cheers,
Artem.

BR,
Robin


___
SailfishOS.org Devel mailing list