How to iterate on all session belonging to the same user, or all tabs?
You must create a session group for each user, then iterate on all the sessions from this group, and possibly on all client processes for each session:
(* We get the session group state for this user: *)
let state =
Eliom_state.Ext.volatile_data_group_state
~scope:Eliom_common.default_group_scope (Int64.to_string user_id)
in
(* We iterate on all sessions from the group: *)
Eliom_state.Ext.iter_volatile_sub_states
~state
(fun state ->
(* We iterate on all client process states in the session: *)
Eliom_state.Ext.iter_volatile_sub_states
~state
(fun state ->
let a = Eliom_reference.Volatile.Ext.get state my_ref in
...)))