There is a notion of distance, the same as in English for ‘there’ and ‘here’. So I think you can use whatever rule you use in English. Personally i translate
- ici -> here
- Là -> there
Both of your sentences are corrects : “Il n’est pas encore là ?” / “Il n’est pas encore ici ?”
Etymologically, ici designates a nearby place and là designates a faraway place. (Latin had three gradations; ici comes from the nearmost one (hic), là from the furthest one (illac)). However, là has evolved in French in such a way that it is often neutral with respect to distance.
In particular, être là means to be present somewhere, regardless of whether that somewhere is the place where the speaker is or not. So “il n’est pas encore là” can be translated by “he isn’t present yet”, it can be used whether the statement is about being present at the location where the conversation is taking place or at some location previously mentioned during the conversation. The sentence “il n’est pas encore ici” would also be possible; it would insist on the fact that the location that the statement is about is the location where the statement is uttered.
The adverb là-bas is used to state unambiguously that the location is remote. (Here bas is not connoted towards down, there is no symmetry with là-haut which does mean “up there, “in that remote high place”.) “Il n’est pas encore là-bas” means “he isn’t over there yet”.
European French-speakers have gone further in the process of replacing ici with là than have Canadian ones. So while a Canadian might well say “Il n’est pas là” to mean “He’s not here,” I doubt anyone in Canada would say “Viens là,” which is something I’ve heard people from France say.