Bonjour à tous et toutes,
J'ai écrit un bout de code java en utilisant la bibliothèque de classes Asterisk-java. Ce code appelle l'un de mes user, John Doe (connecté sur un softphone X-Lite) en utilisant le compte d'un deuxième user, Albert Dupont (connecté sur un softphone Ekiga).
Ce code fonctionne. Ce qui me dérange c'est que l'appel se passe en deux étapes :
- Albert (l'appelant) reçoit un appel venant de lui-même.
- Si Albert décroche, l'appel vers John est lancé (qui peut à son tour décrocher).
Je souhaiterais que l'appel se lance directement. Connaissez-vous ce comportement? Auriez-vous une (piste de) solution à m'offrir?
Ci-joint, un screenshot de la première étape ainsi que mon code (on ne sait jamais)
Un très grand merci d'avance!
Gabriel
2018-02-15 13_57_43-Questions et liens utiles.docx - Word.png
Code:
public void call(final String user, final String exten) throws IOException, AuthenticationFailedException, TimeoutException {
OriginateAction originateAction;
ManagerResponse originateResponse;
originateAction = new OriginateAction();
originateAction.setChannel("SIP/" + user);
originateAction.setContext("work");
originateAction.setExten(exten);
originateAction.setPriority(new Integer(1));
originateAction.setTimeout(new Long(30000));
// connect to Asterisk and log in
managerConnection.login();
// send the originate action and wait for a maximum of 30 seconds for Asterisk to send a reply
originateResponse = managerConnection.sendAction(originateAction, 30000);
// and finally log off and disconnect
managerConnection.logoff();
}