Question

J'ai une application basée sur pjsip pour faire des appels SIP.

L'application fonctionne très bien avec d'autres commutateurs SIP / serveurs mais avec FreeSwitch l'application ne reçoit pas les appels en mode arrière-plan.

Avec FreeSwitch tout va bien lorsque l'application est active, mais quand en arrière-plan l'application n'est pas informé au sujet de l'appel. Il a, sans doute, quelque chose à voir avec la façon dont FreeSwitch informer l'application sur le nouvel appel (pour iOS pjsip la notification doit venir sur la prise enveloppé TCP).

Dose Quelqu'un sait comment je peux configurer le fresSwitch pour envoyer la notification sur un port spécifique?

Était-ce utile?

La solution

Je pour résoudre ce gale problème en ajoutant:

<variable name="sip-force-contact" value="NDLB-connectile-dysfunction"/>

dans freeswitch_install_folder / conf / répertoire / default / XYZ.xml (où XYZ est l'utilisateur que vous configurez) sous les variables.

Autres conseils

Vous ne voulez pas utiliser NDLB-connectile-dysfonction (NDLB) pour iOS avec FreeSwitch. Cela garantira que vous ne pouvez pas tenir un enregistrement ouvert assez longtemps pour être utile en arrière-plan, parce que FreeSwitch ajoute « expires = 30 » à tous les enregistrements lorsque cette option est activée. Après cela, vous aurez juste une erreur « USER_NOT_REGISTERED » lorsque vous essayez d'appeler cet utilisateur, à moins qu'il se trouve être dans les 30 secondes après un appel d'inscription.

Ce que vous devez faire est de suivre les étapes ici: http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html#//apple_ref/doc/uid/TP40007072-CH7-SW12

Plus précisément:

1) assurez-vous que vous avez un iOS keep-alive minuterie en cours d'exécution. (SetKeepAliveTimeout: gestionnaire :), avec le bloc de gestionnaire faisant un registre réévaluées à la valeur minimale (600 secondes)

2) assurez-vous que votre application est configuré pour VOIP et Modes d'arrière-plan de lecture audio dans son Info.plist

3) assurez-vous que votre client enregistre l'interface de flux de réseau pour l'utilisation VOIP comme indiqué dans les directives d'Apple. De cette façon, le système d'exploitation peut mettre l'application pour dormir, mais vous réveiller si le trafic entrant se produit sur ce flux réseau.

Si vous faites les trois personnes, vous devriez être en mesure d'exécuter voip très bien en arrière-plan sur iOS 5, même avec l'écran verrouillé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top