title: Asterisk Multi Language
body: <p>I am currently working with freepbx version 2.11.038 using asterisk version 11.6. I am trying to set up an English Extension and a Spanish Extension ie when you ring one number you hit the  ext 100049 which is for English and when you ring the other you hit ext 100050 which of for Spanish.
  I need the voicemails of these extensions to be in the required language ie 100049 has English voice prompts and 100050 has Spanish voice prompts.</p>
  
  <p>Currently when ringing both I get an English voice.</p>
  
  <p>In the Settings->Advanced Sip Settings, I can set the language to say es. But then all the voice prompts are changed to Spanish on a global scale. I am looking to only do a single extension.</p>
  
  <p><img src="https://i.stack.imgur.com/zuMF0.png" alt="enter image description here"></p>
  
  <p>In Settings->Voicemail admin, I can set the various extensions voicemail language using a language code. The issue is that when a user calls both extensions they get the English voice prompts still. However if 100049 dial "*97" for voicemail they hear a password request in English, if 100050 dial "*97" for voicemail they are requested the password in Spanish. So this voicemail settings only seems to affect when a user dials into their own voicemail and not when an external calls hits their voicemail.</p>
  
  <p><strong>Here is my structure of the sound files</strong></p>
  
  <p><img src="https://i.stack.imgur.com/TnSxL.png" alt="enter image description here"></p>
  
  <p><img src="https://i.stack.imgur.com/TS6aq.png" alt="enter image description here"></p>
  
  <p><img src="https://i.stack.imgur.com/3ImyJ.png" alt="enter image description here"></p>
  
  <p><img src="https://i.stack.imgur.com/8xzAs.png" alt="enter image description here"></p>
  
  <p><strong>Here are my Extensions</strong></p>
  
  <p><img src="https://i.stack.imgur.com/zx4F9.png" alt="enter image description here"></p>
  
  <p><img src="https://i.stack.imgur.com/18oka.png" alt="enter image description here"></p>
  
  <p>Today I have installed the FreePBX language module, which seems to allow me to enter the extension language on the extension page rather than via the voicemail admin, but the result is the same, ext to "*97" language correct, external calls still gets default language.</p>
  
  <p><img src="https://i.stack.imgur.com/CR6hI.png" alt="enter image description here"></p>
  
  <p><strong>Here are the log files for the calls made to ext 100049, the English Extension</strong></p>
  
  <pre><code>-- Executing [vmx@macro-vm:10] NoOp("SIP/NodoProvicnial-000001cd", "Checking if ext 100049 is enabled: ") in new stack
  -- Executing [vmx@macro-vm:11] GotoIf("SIP/NodoProvicnial-000001cd", "1?s-CHANUNAVAIL,1") in new stack
  -- Goto (macro-vm,s-CHANUNAVAIL,1)
  -- Executing [s-CHANUNAVAIL@macro-vm:1] Macro("SIP/NodoProvicnial-000001cd","get-vmcontext,100049") in new stack
  -- Executing [s@macro-get-vmcontext:1] Set("SIP/NodoProvicnial-000001cd", "VMCONTEXT=default") in new stack
  -- Executing [s@macro-get-vmcontext:2] GotoIf("SIP/NodoProvicnial-000001cd","0?200:300") in new stack
  -- Goto (macro-get-vmcontext,s,300)
  -- Executing [s@macro-get-vmcontext:300] NoOp("SIP/NodoProvicnial-000001cd","") in new stack
  -- Executing [s-CHANUNAVAIL@macro-vm:2] VoiceMail("SIP/NodoProvicnial-000001cd", "100049@default,u") in new stack
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'vm-theperson.gsm' (language 'en')[2014-08-07 11:10:52] NOTICE[4184][C-000000d1]: channel.c:4259 __ast_read: Dropping incompatible voice frame on SIP/NodoProvicnial-000001cd of format g729 since our native format has changed to (alaw)
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/1.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/4.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'digits/9.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'vm-isunavail.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001cd&gt; Playing 'vm-intro.gsm' (language 'en')
  
  == Spawn extension (macro-vm, s-CHANUNAVAIL, 2) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'vm'
  == Spawn extension (macro-exten-vm, s, 14) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'exten-vm'
  == Spawn extension (from-did-direct, 100049, 2) exited non-zero on 'SIP/NodoProvicnial-000001cd'
  -- Executing [h@from-did-direct:1] Macro("SIP/NodoProvicnial-000001cd", "hangupcall,") in new stack
  -- Executing [s@macro-hangupcall:1] GotoIf("SIP/NodoProvicnial-000001cd", "1?theend") in new stack
  -- Goto (macro-hangupcall,s,3)
  -- Executing [s@macro-hangupcall:3] ExecIf("SIP/NodoProvicnial-000001cd", "0?Set(CDR(recordingfile)=)") in new stack
  -- Executing [s@macro-hangupcall:4] Hangup("SIP/NodoProvicnial-000001cd", "") in new stack
  == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'hangupcall'
   == Spawn extension (from-did-direct, h, 1) exited non-zero on 'SIP/NodoProvicnial-000001cd'
  == MixMonitor close filestream (mixed)
  == End MixMonitor Recording SIP/NodoProvicnial-000001cd
  
  
  == Spawn extension (macro-vm, s-CHANUNAVAIL, 2) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'vm'
   == Spawn extension (macro-exten-vm, s, 14) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'exten-vm'
  == Spawn extension (from-did-direct, 100049, 2) exited non-zero on 'SIP/NodoProvicnial-000001cd'
  -- Executing [h@from-did-direct:1] Macro("SIP/NodoProvicnial-000001cd", "hangupcall,") in new stack
  -- Executing [s@macro-hangupcall:1] GotoIf("SIP/NodoProvicnial-000001cd", "1?theend") in new stack
  -- Goto (macro-hangupcall,s,3)
  -- Executing [s@macro-hangupcall:3] ExecIf("SIP/NodoProvicnial-000001cd", "0?Set(CDR(recordingfile)=)") in new stack
  -- Executing [s@macro-hangupcall:4] Hangup("SIP/NodoProvicnial-000001cd", "") in new stack
  == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/NodoProvicnial-000001cd' in macro 'hangupcall'
  == Spawn extension (from-did-direct, h, 1) exited non-zero on 'SIP/NodoProvicnial-000001cd'
  == MixMonitor close filestream (mixed)
  == End MixMonitor Recording SIP/NodoProvicnial-000001cd
  </code></pre>
  
  <p><strong><em>Here are the logs for ext 100050 ie Spanish Extension:</em></strong></p>
  
  <pre><code>-- Executing [vmx@macro-vm:10] NoOp("SIP/NodoProvicnial-000001d0", "Checking if ext 100050is enabled: ") in new stack
  -- Executing [vmx@macro-vm:11] GotoIf("SIP/NodoProvicnial-000001d0", "1?s-NOANSWER,1") in new stack
  -- Goto (macro-vm,s-NOANSWER,1)
  -- Executing [s-NOANSWER@macro-vm:1] Macro("SIP/NodoProvicnial-000001d0", "get-vmcontext,100050") in new stack
  -- Executing [s@macro-get-vmcontext:1] Set("SIP/NodoProvicnial-000001d0","VMCONTEXT=default") in new stack
  -- Executing [s@macro-get-vmcontext:2] GotoIf("SIP/NodoProvicnial-000001d0", "0?00:300") in new stack
  -- Goto (macro-get-vmcontext,s,300)
  -- Executing [s@macro-get-vmcontext:300] NoOp("SIP/NodoProvicnial-000001d0", "") in new stack
  -- Executing [s-NOANSWER@macro-vm:2] VoiceMail("SIP/NodoProvicnial-000001d0","100050@default,u") in new stack
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'vm-theperson.gsm' (language 'en')[2014-08-07 11:14:50] NOTICE[4191][C-000000d3]: channel.c:4259 __ast_read: Dropping incompatible voice frame on SIP/NodoProvicnial-000001d0 of format g729 since our native format has changed to (alaw)
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/1.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/5.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'digits/0.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'vm-isunavail.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'vm-intro.gsm' (language 'en')
  -- &lt;SIP/NodoProvicnial-000001d0&gt; Playing 'beep.gsm' (language 'en')
  -- Recording the message
  -- x=0, open writing:  /var/spool/asterisk/voicemail/default/100050/tmp/JKE7il format: wav49, 0x7fccb8064b98
  -- x=1, open writing:  /var/spool/asterisk/voicemail/default/100050/tmp/JKE7il format: gsm, 0x7fccb8060a78
  -- x=2, open writing:  /var/spool/asterisk/voicemail/default/100050/tmp/JKE7il format: wav, 0x7fccb807eac8
  -- User hung up
  </code></pre>
  
  <p>I have asked this on the FreePBX forum also please see the following link.
  <a href="http://community.freepbx.org/t/freepbx-multiple-language-voicemails/23467/3" rel="nofollow noreferrer">FreePbx Forum Post</a></p>
  
  <p>Any advice would be great as I am at a bit of a loss. Any other information I can provide please let me know.</p>