Ticket #2474 (closed New feature: fixed)

Opened 12 months ago

Last modified 10 months ago

UI Scalability of Piwik Mobile app, when hundreds/thousands of sites

Reported by: matt Owned by: tsteur
Priority: normal Milestone: Piwik Mobile Client
Component: UI (templates, javascript) Keywords:
Cc: Sensitive: no

Description

Placeholder for discussing the Piwik Mobile usage with thousands of websites to list.

Attachments

piwiksearch.png Download (65.9 KB) - added by tsteur 11 months ago.
piwikwebsiteslist.png Download (40.8 KB) - added by tsteur 11 months ago.

Change History

Changed 12 months ago by matt

How to make Piwik Mobile nice to use when having 10, 100, or 10000 websites in the App?

The goal is not to call APIs which return data for each site.

  • At the top, a search field that calls the website search function to return sites ids or names matching request?
  • Piwik mobile could keep track of many times each site is clicked on...
  • .. and display top "10 most websites reports viewed" below the search field
  • On first display, until 10 different sites have been viewed, complete the listing with first websites from the list (eg. alphabetical order)

thoughts?

Changed 11 months ago by tsteur

  • owner set to tsteur

Changed 11 months ago by tsteur

  • status changed from new to assigned

Changed 11 months ago by tsteur

I'd like to use the filter parameters for the search function. Example: I want to display only sites which contains a "p" in the name via this request:

 http://demo.piwik.org/?module=API&method=SitesManager.getSitesWithAtLeastViewAccess&format=JSON&token_auth=anonymous&filter_pattern=p&filter_column=name&filter_limit=5

But it does also return virtual drums. What is my mistake?

Changed 11 months ago by SteveG

I guess filters are only applied to datatables and sitesmanager api doesn't return a datatable.

Changed 11 months ago by matt

Like steve said, filters work only on datatables. Currently the only way to select subset of websites matching names is via the getPatternMatchSites API function. Would this function work for Piwik Mobile, or do you need more? for which use case?

Changed 11 months ago by tsteur

That is exactly what I want. Thanks.

Changed 11 months ago by tsteur

(In [4962]) refs #2474 added the possibilty to filter sites by a given pattern in piwik mobile and added possibility to abort requests

Changed 11 months ago by tsteur

(In [4966]) refs #2474 request max 5 sites per account on startup. added searchbar to search sites

Changed 11 months ago by tsteur

The first part is done. I now do display a search field above the list of available sites (see piwiksearch.png).

I do request max 5 sites per default from each account. Additionally, the user is able to search a site.

The more difficult part is the websites selection in the statistics screen. Currently, the user has the possibility to switch to another site by pressing a menu button. This will open a list of all available websites (see piwikwebsiteslist.png). If user selects a website, the same statistic will be opened but with the chosen site.

Example:

  • User opens Visits Summary for piwik.org
  • User opens websites list by tapping a menu icon
  • User selects Piwik Forums
  • User now gets the Visits Summary for Piwik Forums.

I have to add the searchbar to the websites list. I try to find a solution for this.

Changed 11 months ago by tsteur

Changed 11 months ago by tsteur

Changed 11 months ago by tsteur

(In [4984]) refs #2474 make sure search field/keyboard will be closed if user selects a website

Changed 11 months ago by tsteur

(In [4996]) refs #2474 fix display of searchbar on Android high density devices

Changed 11 months ago by matt

Nice progress!! :)

  • have you tested on a piwik with thousands of sites to make sure no requests by Piwik Mobile is slow? An easy way to create hundreds of sites is to use the script in: misc/test_cookies_GenerateHundredsWebsitesAndVisits.php
  • in the screenshot the same website is displayed 2 times (Piwik forums, virtual-drums.com) is it expected?
  • having searchbar on the website list sounds good

Changed 11 months ago by tsteur

Not already tested it on a site with thousands of sites. I'll do it later.

Yes, it is excepted. I've added 2 accounts for demo.piwik.org. One anonymous and one with credentials.

Changed 11 months ago by tsteur

(In [5012]) refs #2474 instead of requesting a list of all site ids, do just verify that the user has at least view access to one website

Changed 10 months ago by tsteur

(In [5021]) refs #2474 allow selection and search of websites within statistics view, works currently only for ios

Changed 10 months ago by tsteur

(In [5022]) refs #2474 works now on android, cache result if user has not used the search, do not display sparklines in website selection

Changed 10 months ago by tsteur

Have tested it on a piwik instance (vmware) with about 1500 sites (created with the script you mentioned) and a throttled internet connection (10K/sec). Works very fine. I'll do some further tests later.

Changed 10 months ago by matt

great news :) I have access to a piwik server with 20k websites so I could test it, but It needs a new version, I think there is no way to test on IOS (iphone) a beta version is there?

very exciting and useful feature!!!

Changed 10 months ago by tsteur

We can register up to 100 "test" devices. I need the "device identifier" (not the serial number) of the iPhone/iPod/iPad (you can send the id to me via email). I can build the app for this device and send you the binary as well as the so-called "provisioning file". The "provisioning file" allows you to install the app without the need to jailbreak the device. You should be able to install the app via iTunes afterwards. Haven't done it that way before (cause I use Xcode) but I think it'll work.

You can find out the device identifier with xcode:  http://developer.apple.com/library/ios/#DOCUMENTATION/Xcode/Conceptual/iphone_development/128-Managing_Devices_and_Digital_Identities/devices_and_identities.html#//apple_ref/doc/uid/TP40007959-CH4-SW11

or with itunes:  http://mohanjith.net/blog/2010/05/how-to-find-out-the-iphoneipod-touch-device-id-without-xcode.html

Changed 10 months ago by tsteur

(In [5033]) refs #2474 users to expect the cancel button on the left site

Changed 10 months ago by matt

ok thanks for the answer, but it sounds complicated. Can you release the android BETA and I can find android phone to test it? thx!!

Changed 10 months ago by tsteur

  • status changed from assigned to closed
  • resolution set to fixed
Note: See TracTickets for help on using tickets.