Freeswitch Module/fr

From OpenSimulator

Revision as of 07:50, 9 September 2021 by Acryline (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Le module FreeSWITCH permet d'utiliser la voix dans OpenSimulator sans qu'il soit nécessaire de modifier le viewer Second Life de Linden Labs. Pour OpenSimulator 0.7.0.2 et les versions antérieures, le viewer doit être compris entre les versions 1.22 et 1.23.5. Pour OpenSimulator 0.7.1 et les versions ultérieures, les viewers 2.x fonctionneront aussi.

Un petit historique sur le développement du module FreeSWITCH est donné ici :

Comment installer FreeSwitch PBX sur Ubuntu 20.04 et 18.04

Contents

Installation de FreeSwitch

Suivez les instructions de compilation dans le wiki FreeSWITCH. (lien mort) Veuillez vous assurer que vous compilez à partir du tronc freeswitch pour le moment jusqu'à ce que nous puissions poster un numéro de version minimum (il y a des problèmes connus avec les versions plus anciennes). Pour les besoins d'OpenSim, nous avons besoin d'activer deux modules spécifiques.

Assurez-vous d' installer la musique d'attente (lien mort) si vous ne comptez pas la désactiver dans la section "configure conference.conf.xml" ci-dessous.

Quand vous arrivez à la section "Edit modules.conf" des instructions de construction de Freeswitch, éditez le fichier modules.conf et décommentez pour rendre actives les entrées pour xml_curl et le codec siren14.

 codecs/mod_siren
   et
 xml_int/mod_xml_curl

Note : Le master Git de Freeswitch en date du 18 avril 2011 a déjà configuré codecs/mod_siren.

  • Vous pouvez également utiliser ce guide pour le configurer rapidement -- Fly-man-.

Mise à jour de janvier 2019 : Le wiki de Freeswitch est maintenant à https://freeswitch.org/confluence/. Comme indiqué, " Le personnes qui ont copié les pages restantes de l'ancien mediawiki vers Confluence nous a donné toute la documentation digne d'être publiée, cependant elles ne sont pas bien organisées. La recherche est votre ami. "

La page d'installation se trouve à l'adresse https://freeswitch.org/confluence/display/FREESWITCH/Installation.

Page de configuration : https://freeswitch.org/confluence/display/FREESWITCH/Configuring+FreeSWITCH

Notez que Debian, Ubuntu et CentOS/RHEL proposent des paquets comme expliqué respectivement ici, ici, et ici.

Configuration de FreeSwitch

activation de mod_xml_curl

Une fois que vous avez compilé et installé Freeswitch, vous devrez activer mod_siren et mod_xml_curl dans /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml, car ils sont désactivés par défaut lors d'une nouvelle installation.

Décommenter les lignes...

   <load module="mod_xml_curl"/>

et

   <load module="mod_siren"/>

Note : Le master Git de Freeswitch, en date du 18 avril 2011, a déjà configuré mod_siren.

configuration de mod_xml_curl

mod_xml_curl est un module freeswitch qui permet la configuration dynamique de freeswitch à partir d'un serveur web. Dans ce cas, il s'agit du serveur de région opensim.

La configuration du module xml_curl doit pointer vers une région opensim dans laquelle le module vocal Freeswitch est activé (la voix doit également être activée dans les paramètres du domaine pour toutes les régions que vous souhaitez prendre en charge).

Vous pouvez le configurer en modifiant le fichier /usr/local/freeswitch/conf/autoload_configs/xml_curl.conf.xml.

OpenSimulator 0.7.1 et supérieur

Vous pouvez remplacer la configuration existante par les paramètres suivants, ou simplement ajouter le répertoire et les liens dialplan. L'adresse IP est utilisée par le serveur Freeswitch pour atteindre le service Freeswitch d'OpenSimulator et récupérer les détails de sa configuration. Si vous exécutez tout sur un seul serveur et que votre système n'a qu'une seule adresse IP, cela peut être simplement localhost. Si vous exécutez freeswitch sur un autre serveur ou si vous avez plusieurs adresses IP, cette adresse doit être explicitement l'adresse de votre standalone.

Vous devrez également modifier le numéro de port si vous utilisez un port HTTP de standalone différent du port par défaut (9000).

En mode grille, vous devrez remplacer localhost par l'ip de l'instance ROBUST qui exécute le service de grille FreeSwitch, et remplacer le port par le port du service (généralement 8004).

Cette configuration indique à freeswitch où obtenir la configuration "dialplan" et "directory" d'opensim (comme mentionné par les attributs bindings). Plus de détails sur le module mod_xml_curl peuvent être trouvés ici.

<configuration name="xml_curl.conf" description="cURL XML Gateway">
<bindings>
   <binding name="directory">
           <param name="gateway-url" value="http://localhost:9000/fsapi/freeswitch-config" bindings="directory"/>
           <param name="gateway-credentials" value="freeswitch:password"/>
           <param name="disable-100-continue" value="true"/>
   </binding>
   <binding name="dialplan">
           <param name="gateway-url" value="http://localhost:9000/fsapi/freeswitch-config" bindings="dialplan"/>
           <param name="gateway-credentials" value="freeswitch:password"/>
           <param name="disable-100-continue" value="true"/>
   </binding>
</bindings>
</configuration>

OpenSimulator 0.7.0.2 et antérieur

Pour OpenSimulator 0.7.0.2 et les versions antérieures, la configuration est identique, sauf que les chemins d'accès à la passerelle commencent par /api au lieu de /fsapi.

<configuration name="xml_curl.conf" description="cURL XML Gateway">
<bindings>
   <binding name="directory">
           <param name="gateway-url" value="http://localhost:9000/api/freeswitch-config" bindings="directory"/>
           <param name="gateway-credentials" value="freeswitch:password"/>
           <param name="disable-100-continue" value="true"/>
   </binding>
   <binding name="dialplan">
           <param name="gateway-url" value="http://localhost:9000/api/freeswitch-config" bindings="dialplan"/>
           <param name="gateway-credentials" value="freeswitch:password"/>
           <param name="disable-100-continue" value="true"/>
   </binding>
</bindings>
</configuration>

configurer vars.xml

Note : Le master Git de Freeswitch en date du 18 avril 2011 a déjà cette configuration.

Le fichier /usr/local/freeswitch/conf/vars.xml doit être modifié pour activer le codec siren14

cherchez dans vars.xml le fichier global_codec_prefs et modifiez la ligne comme suit

   <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G722,PCMU,PCMA,GSM"/> 

ou

   <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM"/>

G7221@32000h est le codec siren14

configurer conference.conf.xml

Par défaut, FreeSwitch joue une musique d'attente lorsqu'il n'y a qu'un seul avatar dans la conférence et émet un bip pour tout le monde lorsque les avatars arrivent et partent. Pour désactiver cela, éditez /usr/local/freeswitch/conf/autoload_configs/conference.conf.xml. Localisez le profil "default" et commentez les lignes du fichier son, comme indiqué dans l'exemple ci-dessous.

  <!-- Profiles are collections of settings you can reference by name. -->
  <profiles>
    <!--If no profile is specified it will default to "default"-->
    <profile name="default">
    ...
      <!-- If TTS is enabled all audio-file params beginning with -->
      <!-- 'say:' will be considered text to say with TTS -->
      <!-- Override the default path here, after which you use relative paths in the other sound params -->
      <!-- Note: The default path is the conference's first caller's sound_prefix -->
      <!--<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/>-->
      <!-- File to play to acknowledge succees -->
      <!--<param name="ack-sound" value="beep.wav"/>-->
      <!-- File to play to acknowledge failure -->
      <!--<param name="nack-sound" value="beeperr.wav"/>-->
      <!-- File to play to acknowledge muted -->
      <!-- <param name="muted-sound" value="conference/conf-muted.wav"/> -->
      <!-- File to play to acknowledge unmuted -->
      <!-- <param name="unmuted-sound" value="conference/conf-unmuted.wav"/> -->
      <!-- File to play if you are alone in the conference -->
      <!-- <param name="alone-sound" value="conference/conf-alone.wav"/> -->
      <!-- File to play endlessly (nobody will ever be able to talk) -->
      <!--<param name="perpetual-sound" value="perpetual.wav"/>-->
      <!-- File to play when you're alone (music on hold)-->
      <!-- <param name="moh-sound" value="$${hold_music}"/> -->
      <!-- File to play when you join the conference -->
      <!-- <param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> -->
      <!-- File to play when you leave the conference -->
      <!-- <param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> -->
      <!-- File to play when you ae ejected from the conference -->
      <!-- <param name="kicked-sound" value="conference/conf-kicked.wav"/> -->
      <!-- File to play when the conference is locked -->
      <!-- <param name="locked-sound" value="conference/conf-locked.wav"/> -->
      <!-- File to play when the conference is locked during the call-->
      <!-- <param name="is-locked-sound" value="conference/conf-is-locked.wav"/> -->
      <!-- File to play when the conference is unlocked during the call-->
      <!-- <param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/> -->
      <!-- File to play to prompt for a pin -->
      <!-- <param name="pin-sound" value="conference/conf-pin.wav"/> -->
      <!-- File to play to when the pin is invalid -->
      <!-- <param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/> -->
      ...
    </profile>
  ...
  </profiles>

Configuration d'OpenSimulator

Configuration pour OpenSimulator 0.7.1 et suivants

Standalone

La configuration est expliquée dans OpenSim.ini.example. Voici un exemple

[FreeSwitchVoice]
   Enabled = true
   LocalServiceModule = OpenSim.Services.FreeswitchService.dll:FreeswitchService
   
[FreeswitchService]
   ServerAddress = 192.168.1.2

Dans ce cas, le serveur FreeSWITCH fonctionne sur 192.168.1.2 et seuls les utilisateurs du LAN local ont besoin d'y accéder. Si des personnes avaient besoin d'accéder à la standalone (et donc au service vocal) en externe, alors cette IP devrait pouvoir être atteinte depuis l'extérieur (par exemple 80.175.122.1). Aucun autre fichier n'a besoin d'être configuré.

Mode Grille

En mode grille, [FreeSwitchVoice] dans OpenSim.ini et [FreeswitchService] dans Robust.ini ou Robust.HG.ini doivent être configurés. Les détails des configurations sont présentés dans les exemples OpenSim.ini, Robust.ini et Robust.HG.ini. Voici un exemple de configuration pour OpenSim.ini.

[FreeSwitchVoice]
   Enabled = true
   LocalServiceModule = OpenSim.Services.Connectors.dll:RemoteFreeswitchConnector
   FreeswitchServiceURL = http://192.168.1.3:8004/fsapi

Ajouter pour Robust.ini/Robust.HG.ini

[FreeswitchService]
   LocalServiceModule = OpenSim.Services.FreeswitchService.dll:FreeswitchService
   ServerAddress = http://192.168.1.4

Dans ce cas, le service de grille est exécuté sur 192.168.1.3 et le serveur FreeSWITCH est exécuté sur 192.168.1.4.

Pour plus de détails sur la configuration de FreeSWITCH pour cette version vous pouvez vous référer à

OpenSimulator 0.7.0.2 et antérieur

Standalone

Ajoutez ce qui suit à votre OpenSim.ini

[FreeSwitchVoice]
Enabled = true
LocalServiceModule = "OpenSim.Services.FreeswitchService.dll:FreeswitchService"

[FreeswitchService]
ServerAddress = youropensimregionip
Realm = "youropensimregionip"

Mode Grille

Ajoutez ce qui suit à votre OpenSim.ini

[FreeSwitchVoice]
Enabled = true
LocalServiceModule = OpenSim.Services.Connectors.dll:RemoteFreeswitchConnector
FreeswitchServiceURL = http://ip.of.your.robust.server.for.freeswitch.connector:8004/fsapi

Ajoutez ce qui suit à votre fichier Robust.ini ou Robust.HG.ini

[FreeswitchService]
LocalServiceModule = OpenSim.Services.FreeswitchService.dll:FreeswitchService
ServerAddress = ip.of.your.robust.server.for.freeswitch.connector
Realm = "ip.of.your.robust.server.for.freeswitch.connector"


Si votre Freeswitch se plaint d'un domaine inconnu, vous avez probablement mélangé des adresses IP et des noms d'hôtes. Vous devez toujours utiliser des adresses IP formé de 4 nombres entiers séparés par des points, car des comparaisons de chaînes de caractères sont effectuées dans le code Freeswitch et un nom et son adresse correspondante ne sont pas considérés comme identiques !

Configuration du Firewall

En principe, les ports 1720 et 5060, et peut-être 50505 doivent être ouverts à l'écoute.

Assurez-vous que les ports utilisés par Freeswitch sont accessibles à travers votre ou vos pare-feu. Dans l'exemple ci-dessus, le port principal utilisé est 5060, bien que d'autres ports puissent être utilisés pour l'initiation d'appel (port 1720 pour la signalisation d'appel H.323) et des ports assignés dynamiquement pour le trafic d'appel spécifique. La gestion dynamique habituelle des ports pour le trafic H.323 et SIP sur les pare-feu modernes permet généralement cela.

Le port 50505 est-il réellement utilisé, ou est-ce juste quelque chose qui doit être
rapporté par OpenSimulator lorsque le service Freeswitch prend contact ?


Plus de détails au sujet des ports Freeswitch utilisés et de la configuration du pare-feu sont disponibles à l'adresse suivante http://wiki.freeswitch.org/wiki/Firewall

Si vous avez des problèmes avec les NAT/Routeurs, vous pouvez utiliser STUN (Simple Traversal of UDP through NATs). Pour plus d'informations, consultez le site http://wiki.freeswitch.org/wiki/NAT_Traversal

Tout mettre en marche

1. Freeswitch récupère la configuration liée à OpenSimulator à partir du module vocal et du service freeswitch d'OpenSimulator que nous avons mis en place précédemment. Par conséquent, vous devez d'abord démarrer OpenSimulator. Au démarrage, vous devriez voir les lignes

21:45:33 - [FreeSwitchVoice]: using FreeSwitch server <votre adreesse IP>
21:45:33 - [FreeSwitchVoice]: plugin enabled

2. Démarrez freeswitch qui va envoyer l'erreur suivante :

 [ERR] mod_xml_curl.c:302 Error Parsing Result! [http://localhost:9000/fsapi/freeswitch-config] data: [hostname=fruitfly&section=directory&tag_name=&key_name=&key_value=&Event-Name=REQUEST_PARAMS&Core-UUID=8cdac78a-e880-11e0-a320-3324fcf85684&FreeSWITCH-Hostname=fruitfly&FreeSWITCH-Switchname=fruitfly&FreeSWITCH-IPv4=192.168.1.2&FreeSWITCH-IPv6=%3A%3A1&Event-Date-Local=2011-09-26%2021%3A46%3A03&Event-Date-GMT=Mon,%2026%20Sep%202011%2020%3A46%3A03%20GMT&Event-Date-Timestamp=1317069963782065&Event-Calling-File=sofia.c&Event-Calling-Function=config_sofia&Event-Calling-Line-Number=3965&purpose=gateways&profile=external]

et

[ERR] mod_xml_curl.c:305 Received HTTP error 404 trying to fetch http://localhost:9000/fsapi/freeswitch-config data: [hostname=fruitfly&section=directory&tag_name=domain&key_name=name&key_value=192.168.1.2&Event-Name=GENERAL&Core-UUID=8cdac78a-e880-11e0-a320-3324fcf85684&FreeSWITCH-Hostname=fruitfly&FreeSWITCH-Switchname=fruitfly&FreeSWITCH-IPv4=192.168.1.2&FreeSWITCH-IPv6=%3A%3A1&Event-Date-Local=2011-09-26%2021%3A46%3A05&Event-Date-GMT=Mon,%2026%20Sep%202011%2020%3A46%3A05%20GMT&Event-Date-Timestamp=1317069965442975&Event-Calling-File=switch_core.c&Event-Calling-Function=switch_load_network_lists&Event-Calling-Line-Number=1173&domain=192.168.1.2&purpose=network-list]

Vous pouvez ignorer ces erreurs pour le moment - elles devraient être corrigées à l'avenir mais n'empêcheront pas Freeswitch de fonctionner.

Sur la région d'OpenSimulator (en mode standalone) ou sur la console de la grille (en mode Grille), vous devriez voir les lignes suivantes

[FreeSwitchVoice]: Received request for config section directory, event calling function 'config_sofia'
[FreeSwitchVoice]: Received request for config section directory, event calling function 'config_sofia'
[FreeSwitchVoice]: Received request for config section directory, event calling function 'switch_load_network_lists'

3. Maintenant, assurez-vous que votre parcelle de la région a la voix activée dans le la fenêtre de configuration de la parcelle. Il se peut que vous deviez modifier cette option et redémarrer OpenSimulator si elle n'a pas été définie précédemment.

4. Connectez-vous à votre client. Assurez-vous que la voix est activée et qu'elle fonctionne (probablement en testant d'abord sur une autre grille).

5. Si tout s'est déroulé comme prévu, vous devriez voir quelque chose comme ceci

[FreeSwitchVoice]: OnRegisterCaps() called with agentID 0fe223e7-370a-46da-b935-b0831ddf6d08 caps OpenSim.Framework.Capabilities.Caps in scene test2

entre autres sur la console de région d'OpenSimulator. Et sur la console freeswitch vous devriez voir quelque chose comme

2011-09-26 22:10:09.866918 [WARNING] sofia_reg.c:1241 SIP auth challenge (REGISTER) on sofia profile 'internal' for [xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2] from ip 192.168.1.2
2011-09-26 22:10:10.046904 [ERR] mod_xml_curl.c:305 Received HTTP error 404 trying to fetch http://localhost:9000/fsapi/freeswitch-config
data: [hostname=fruitfly&section=directory&tag_name=domain&key_name=name&key_value=192.168.1.2&Event-Name=GENERAL&Core-UUID=da41cd40-e883-11e0-b7d8-07a2aa0d33c8&FreeSWITCH-Hostname=fruitfly&FreeSWITCH-Switchname=fruitfly&FreeSWITCH-IPv4=192.168.1.2&FreeSWITCH-IPv6=%3A%3A1&Event-Date-Local=2011-09-26%2022%3A10%3A10&Event-Date-GMT=Mon,%2026%20Sep%202011%2021%3A10%3A10%20GMT&Event-Date-Timestamp=1317071410046904&Event-Calling-File=mod_voicemail.c&Event-Calling-Function=resolve_id&Event-Calling-Line-Number=1284&action=message-count&key=id&user=xD-Ij5zcKRtq5NbCDHd9tCA%3D%3D&domain=192.168.1.2]
2011-09-26 22:10:10.466949 [WARNING] sofia_reg.c:1241 SIP auth challenge (INVITE) on sofia profile 'internal' for [conf-xZGQ1Yjc3ZjgtYmY4OC00NWFjLWFhY2UtMzViZDc2NDI2Yzgx@192.168.1.2] from ip 192.168.1.2
2011-09-26 22:10:10.646923 [NOTICE] switch_channel.c:816 New Channel sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 [eb426488-e883-11e0-b7e2-07a2aa0d33c8]
2011-09-26 22:10:10.646923 [INFO] mod_dialplan_xml.c:331 Processing Justin Clark-Casey <xD-Ij5zcKRtq5NbCDHd9tCA==>->conf-xZGQ1Yjc3ZjgtYmY4OC00NWFjLWFhY2UtMzViZDc2NDI2Yzgx in context default
2011-09-26 22:10:10.646923 [NOTICE] mod_dptools.c:930 Channel [sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2] has been answered
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6561 using channel sound prefix: /usr/local/freeswitch/sounds/en/us/callie
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '0' to 'mute'
2011-09-26 22:10:10.646923 [INFO] switch_ivr_async.c:163 Digit parser mod_conference: Setting realm to conf
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '*' to 'deaf mute'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '9' to 'energy up'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '8' to 'energy equ'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '7' to 'energy dn'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '3' to 'vol talk up'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '2' to 'vol talk zero'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '1' to 'vol talk dn'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '6' to 'vol listen up'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '5' to 'vol listen zero'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '4' to 'vol listen dn'
2011-09-26 22:10:10.646923 [INFO] mod_conference.c:6924 sofia/internal/xD-Ij5zcKRtq5NbCDHd9tCA==@192.168.1.2 binding '#' to 'hangup'

Avec un peu de chance, les boutons de la voice de votre client seront activés et fonctionneront.

Problèmes et solutions

Assurez-vous d'avoir activé la voix dans la boîte de dialogue "About Land"-&gt ; "Voice" de la région, vous devez être un administrateur de la région pour le faire.

Vérifiez que la voix est également activée sur la parcelle. Vous devez être propriétaire de la parcelle ou avoir l'autorisation de le faire. Les récents viewers Second Life de Linden Labs ne proposent pas cette option, utilisez donc un autre client qui le permet

Problème
Solution
--[ERR] mod_xml_curl.c:230 xml_url_fetch() Received HTTP error 0 trying to fetch:
Pour résoudre cette erreur, récupérez le dernier GIT de FreeSwitch, suivez ces instructions (pour Ubuntu)  ici.
--mod_event_socket.c -> Socket Error Could not listen on 127.0.0.1:5060:
Cela signifie que quelque chose utilise le port 5060, généralement freeswitch est déjà en cours d'exécution, sur Ubuntu, essayez la commande suivante : netstat -npl &#124 ; grep 85060 Si freeswitch est en cours d'exécution, fermez-le avec : sudo freeswitch -stop OU sudo invoke-rc.d freeswitch stop.
--[ERR] [WARNING] sofia_reg.c:1540 sofia_reg_parse_auth()Can't find user [x8cOXAiIzTVC6xqf-nquLkw==@"some ip or domain here"] etc ... une solution à cette erreur est de modifier votre vars.xml en remplaçant les lignes de domaine <X-PRE-PROCESS cmd="set" data="domain=quelque soit le paramètre de domaine de votre configuration freeswitch"/> <X-PRE-PROCESS cmd="set" data="domain_name=quelque soit le paramètre de domaine de votre configuration freeswitch"/> - Maintenant, cela va très probablement casser votre freeswitch pour tout autre chose que votre opensim. Mais cela devrait vous aider.
--[WARNING] mod_local_stream.c:393 Unknown source moh, trying 'default'

[ERR] mod_local_stream.c:402 Unknown source default

Si vous voyez ces messages continuellement sur la console Freeswitch, alors vous n'avez pas désactivé les sons de conférence ou vous ne les avez pas installés (voir plus haut).



Utiliser certaines des fonctions de débogage de FreeSWITCH :

  • conference list <--- pour voir si vous avez des conférences configurées (notez que vous devez être dans le monde quand d'essayez ceci)
  • xml_curl debug_on <--- cette commande va transférer les transactions entre OpenSimulator et FreeSWITCH dans un fichier (sous linux, il se trouve dans /tmp).
  • xml_curl debug_off <-- le désactiver après s'être connecté/déconnecté plusieurs fois

Notes sur la configuration d'Openvue Grid pour FreeSwitch

Utilisation de Windows Vista 32 bit OS. Fonctionne avec FreeSwitch 1.0.4 et plus (pour un exemple spécifique testé, FreeSWITCH Version 1.0.head (git-e0c37c1 2010-11-05 18-20-09 -0500)).

Notes supplémentaires qui pourraient aider :

1.Nous avons établi un simple OpenSim.exe sur le MÊME hôte que le service FreeSwitch.exe et mis une seule île simple sur celui-ci (nous l'avons appelé "Talk") car certaines personnes ont observé que FreeSwitch avait des problèmes de connexion s'il était CONFIGURÉ pour se lier à un autre serveur, mais nous ne pensons pas que cela soit nécessaire.

2. FreeSwitch fournit un service à toutes les instances d'OpenSim.exe sur tous les serveurs que vous souhaitez, même s'il n'est configuré que pour un seul.

3. Il y a un canal FreeSwitch par région, changez de région et vous changez de canal. Donc tous les utilisateurs pour parler doivent être sur la même région. Toutes les parcelles d'une région partagent le même canal unique de la région.

4. Vous apparaissez comme un seul utilisateur dans les Viewers SL, TOUS les autres utilisateurs apparaissent comme un seul "utilisateur" avec un nom codé pour les autres utilisateurs du canal - quelque chose comme conf-x999999999999999999999.

5. Vous devez avoir la voix activée au niveau de la région, ET au niveau de la parcelle. C'est un problème, car le paramètre par défaut dans OpenSimulator est que la voix est désactivée pour les parcelles. Les viewers standards 1.23 et 2.x ne vous permettent pas de réactiver cette fonction, vous devez donc utiliser un viewer tiers pour activer la voix des parcelles. J'ai déjà demandé que nous modifiions le paramètre par défaut lors de la création d'une parcelle pour que cette fonction soit activée par défaut (ou activée si la voix de la région est activée, ce qui est le cas par défaut).

6. Nous ne sommes pas sûrs que vous DEVIEZ lancer FreeSwitch.exe avant les régions sur lesquelles vous voulez que la voix fonctionne. Mais nous le faisons par sécurité. Cela fonctionne bien sur les redémarrages d'OpenSim.exe sans que FreeSwitch soit redémarré.

7. Si vous souhaitez utiliser FreeSwitch au-delà de votre réseau local, n'oubliez pas de configurer pour des adresses IP accessibles de l'extérieur. Utilisez des numéros d'IP pour FreeSwitch... et s'il y a des adresses réseau locales de style 192.168.x.x dedans, vous ne pourrez pas faire fonctionner FreeSwitch avec des utilisateurs externes. Il peut fonctionner à travers une gamme de pare-feu avec des mécanismes appropriés tels que la redirection de port ou les DMZ, aussi longtemps que vous vous connectez à l'adresse IP visible de l'extérieur. Assurez-vous que les ports appropriés sont ouverts dans votre ou vos pare-feu. Voir la section séparée dans le Wiki sur les ports requis.

8. Il y a quelques erreurs rouges au démarrage de FreeSwitch - au moins dans notre configuration - qui semblent être liées à un fichier de configuration manquant que FreeSwitch essaie de récupérer d'OpenSimulator (opensim-region-server-url:port/api/freeswitch-config) qui n'est pas dans la configuration d'OpenSimulator... Nous avons (en toute sécurité ?) ignoré ceux-ci sans problèmes...

2010-11-13 14:42:55.252361 [ERR] mod_xml_curl.c:252 Received HTTP error 0 trying
to fetch http://129.215.219.143:9000/api/freeswitch-config
data: [hostname=shuna&section=directory&tag_name=domain&key_name=name&key_value=
129.215.219.143&Event-Name=GENERAL&Core-UUID=cb64ea40-aa92-494b-be13-65d9c468efe
c&FreeSWITCH-Hostname=shuna&FreeSWITCH-IPv4=129.215.219.143&FreeSWITCH-IPv6=2002
%3A81d7%3Adb8f%3A%3A81d7%3Adb8f&Event-Date-Local=2010-11-13%2014%3A42%3A54&Event
-Date-GMT=Sat,%2013%20Nov%202010%2014%3A42%3A54%20GMT&Event-Date-Timestamp=12896
59374247361&Event-Calling-File=switch_core.c&Event-Calling-Function=switch_load_
network_lists&Event-Calling-Line-Number=984&domain=129.215.219.143&purpose=network-list]

9. By default, FreeSwitch plays hold music when there is only one avatar in the conference and beeps for everyone when avatars arrive and leave. To disable, edit /usr/local/freeswitch/conf/autoload_configs/conference.conf.xml. Locate the "default" profile and comment out the relevant lines. See examples above on this Wiki page.

Personal tools
General
About This Wiki