Comments (2)
I am not sure I am following the whole issue. So, first of all I want to figure out the scenario:
- Are we considering the case that more than one dialer app could be active at the same time?
- Which of the followingsis the requirement this API would like to support?
- different dialer apps should see the same call history
- different dialer apps should maintain their own slice of call history.
Quote from Zoltan:
Here we have 2 cases:
a. After sync, the short log is cleared, i.e only one entity can read it.
b. A full call history DB is maintained, with a client API to read, write back, revisions support, id allocation. This added complexity works against the requirement, so it is not desirable. 2a is the simpler, preferred solution.
my question to a): how to determine which app is that only one entity? Does a) mean different dialer apps see the different call history?
Quote from Zoltan:
In both cases it seems feasible to use DataStore API for sync, with the schema of CallHistoryEntry. We need to have a way to say from the dialer that "I am using a DataStore with schema specified by CallHistoryEntry", similar to the C++ syntax of:
DataStore callHistory;
Wouldn't that be something like "navigator.getDataStores("callhsitory")"? [1]
Thanks!
[1] https://wiki.mozilla.org/WebAPI/DataStore
from telephony.
"1) Are we considering the case that more than one dialer app could be active at the same time?"
Yes, there could be more dialers, handling different or overlapping telephony services (app choice).
Call history could be maintained per service or combined (platform /app choice).
Also, call history could be in system-level and app-level storage.
There may be only one dialer allowed to a given telephony service (platform choice, then user choice on which one is it). That is a platform, or user choice.
"my question to a): how to determine which app is that only one entity? "
The user selects it.
"Does a) mean different dialer apps see the different call history? "
Yes. In that particular choice of implementation, yes.
The question is what is our assumption on this.Similar to what we have agreed in Messaging 2 hours ago, the current assumption could be that we have a system level storage for call history, and each app may maintain their own cache, too. In this scenario, marking e.g. a missed call as "seen" will have effect on all dialers, since their call history cache will be synchronized with the system storage.
But do we need the app cache at all? The main queries on call history are very simple: get all past calls, and have events for updates. Then, the app can show them in different lists: missed, dialed, received, etc, or in one list.
So I don't see why apps would want to index call history: they are just interested to get all the data. Therefore a DataStore like API is good enough, and it will use only a subset of it. Should we define a callhistory specific wrapper for storage interface?
"Wouldn't that be something like "navigator.getDataStores("callhsitory")"? [1]"
OK, that is good enough, assuming there in one common schema for CallHistory, which is our case.
from telephony.
Related Issues (20)
- argument params vanished with noLegacyStyle HOT 1
- Dial and telephone number format HOT 12
- Invoking dial() twice should result in an AbortError HOT 3
- Making outbound calls needs to be better defined HOT 3
- Dial method needs rewrite HOT 2
- calls attribute of the TelephonyManager interface should be a sequence HOT 3
- DialParams and ToneParams should be DialOptions, ToneOptions HOT 1
- dial() method needs to treat null as empty string HOT 2
- Add a TOC HOT 2
- Telephony system eventing model should fill event gaps
- serviceIds needs to be redefined as sequence
- emergencyNumbers needs to become a sequence
- Check that methods relying on promises must not throw synchronously
- Recommend a format for serviceID HOT 2
- Call waiting support on CDMA HOT 7
- consider using telephony service objects HOT 5
- MMI support in Telephony API HOT 2
- Notification when calls array is ready even it's empty HOT 2
- merge calls from different services/sim cards HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from telephony.