anyIdentity is middleware. Software that provides a high level interface (to users or applications).
It implements [common, combined, complex] functions interacting with the anyMeta API.
The motivation was to offer secure and easy access to anyMeta in a re-usable and flexible fashion.
anyIdentity is written in C++ (and POSIX-c) using the QT-framework and distributed in terms of the GPL. It runs on gnu/Linux, Mac-OSX, Windows and quite a few mobile platforms. - One can use it as GUI, CLI, or just scrape some code..
lookup/retrieve Information (eg. Identities like RFID)
verify user accounts (sha1 passwords)
upload media files.
modify/store text (titles, new articles)
flexible setup/configuration
provides secure authentication (oauth signature)
list, execute and parse result for generic anyMeta REST
API commands.
add/remove edge
change title
modify text data
commandline or graphical user interface
assign/remove RFID to/from things
lookup things, get title
live-search thing(s)
create/remove edges
add a Thing: text (article, tag, keyword, event) or image (attachment)
update/change/delete a thing
A profile consists of site/vhost specific information (URL, credentials,..).
There is only one profile active at any given time, but the application can remember multiple profiles.
There is additional configuration (eg. mifare RFID hardware settings) and user preferences.
profiles can be /locked/ (invisible and read-only for the user)
cloneable config (import/export)
exchange profiles on the fly (eg. admin profile with extra privileges).
remaining ToDo and future extensions:
remote configuration (retrieve config for a specific event.)
improve command-line interface
oauth-auto-setup-dialog (discovery, key-exchange)
anyMedia (extend edge dialog, auto-rescan folder,..)
transactions - receive notifications and allow to undo modifications done by RFIDs
oauth/
ACL-setup (one time password, enabled only during events)
specific queries for IDs, Events, Keywords (collect most-commonly-used)
create edges with ARO of user (if object is a person/user) → user can delete/modify
thumbnail/web-collage module (create picture from listpublish, img-url/position map)