La chose importante est de bien comprendre la notion de contexte sous asterisk.

Pour faire simple, sans décrire tout les autres context...
Tu as 3 context principaux (les noms peuvent être différent en fonction de comment tu as fais ta conf):
1) [from-extern] dans lequel tu créer des routes vers tes postes, groupes etc... c'est ce context que tu donnes a ton trunk.
ce context n'est inclus nul part.

2) [default] Tes utilisateurs sont dans ce context.

3) [to-extern] c'est ici que tu mets ton dialplan de sortie vers ton trunk.

To extern est inclus dans défaut, de cette manière quand tu appelles, asterisk regarde déjà dans [Default] si le num existe, et si ce n'est pas le cas il regarde dans le context inclus.


Dans ton cas:

Imagine remplacer:
[from-extern] par [from-extern-societeA]
[default] par [default-societeA]
[to-extern] par [to-extern-societeA]

Tu inclues [to-extern-societeA] dans [default-societeA].

Rien ne t’empêche de créer:
[from-extern-societeB] que tu affecteras a ton trunk B
[default-societeB] dans lequels tu mettras tes extension de la société B
[to-extern-societeB] ou tu recrées tes routes de sorties vers ton trunk B.