Jump to content

Ansagesprache steuern per Landesvowahl


thielmichael

Recommended Posts

Hallo,

 

gibt es eine möglichkeit herauszufinden welche landesvorwahl der anrufer hat und dem entsprechend die Ansagetexte zu steuern?

Ich versuche per VB-Script die Länderkennung abzufragen und diese dann in eine Variable zu schreiben. diese Variable möchte ich dann in den folgenden Call Routings abfragen und den Anrufer dann in verschieden sprachige ansagen zu leiten. Folgendes habe ich versucht, bekomme jedoch keine Resultate.

 

CanonicalCallingNumber = PBXScript.ConvertToCanonical(IpPbx.CallingNumber)
IpPbx.CallingNumber = CanonicalCallingNumber

If IpPbx.CallingNumber = "+49*" then
     LanguageCallingCountry = "ger"
elseif IpPbx.CallingNumber = "+41*" then
     LanguageCallingCountry = "ger"
elseif IpPbx.CallingNumber = "+43*" then
     LanguageCallingCountry = "ger"
else
     LanguageCallingCountry = "eng"
End If

auch wenn ich das ganze über eine Funktion versuche passiert nichts, bzw die anrufe werden einfach beendet.

 

Function IsInternationalCaller ( )

  CanonicalCallingNumber = PBXScript.ConvertToCanonical(IpPbx.CallingNumber)
  IpPbx.CallingNumber = CanonicalCallingNumber

  If IpPbx.CallingNumber = "+49*" then
       LanguageCallingCountry = "ger"
  elseif IpPbx.CallingNumber = "+41*" then
       LanguageCallingCountry = "ger"
  elseif IpPbx.CallingNumber = "+43*" then
       LanguageCallingCountry = "ger"
  else
       LanguageCallingCountry = "eng"
  End If

End Functiion

Ich bin mir nicht sicher ob das am Script im Startblock liegt oder am "Variable auswerten" Block, wo ich versuche die Variable "LanguageCallingCountry" auf den Wert "ger" zu prüfen.

 

LanguageCallingCountry = "ger"

Leider finde ich keine Topics in diesem Forum die mir bei meinem Problem helfen. Ich fange gerade erst an mich mit diesem Thema auseinander zu setzen, und bei ein absoluter Neuling in VB-Scripting. Allerdings ist es PHP sehr ähnlich, wo ich mich auch besser auskenne. ICh hoffe Ihr könnt mir helfen.

 

LG Michael

Link to comment
Share on other sites


@jodost ich danke dir, das war der entscheidende Hinweis. Manchmal sieht man den Wald vor lauter Bäumen nicht :rolleyes:.

 

Für alle anderen die vor dem Selben Problem stehen, hier meine Lösung. Im Startblock des ersten Call Routings folgenden Code einfügen.

' Feststellen ob der Anrufer deutschsprachig ist

function CallerCountry()
  CallerCountry = Left(IpPbx.CallingNumber,3)
end function
       
dim ShortedCallingNumber,GermanCaller
ShortedCallingNumber = CallerCountry()
GermanCaller = 1

if ShortedCallingNumber = "+49" then
  GermanCaller = 1
elseif ShortedCallingNumber = "+43" then
  GermanCaller = 1
elseif ShortedCallingNumber = "+41" then
  GermanCaller = 1
else
  GermanCaller = 0
end if

Durch diesen Code wird geprüft ob der Anrufer mit einer Deutschen, Schweizer oder Österreicher Landesvorwahl anruft. Dem entsprechend wird die Variable "GermanCaller" geändert. Für Anrufe aus Deutschland, Österreich oder der Schweiz bekommt die Variable den Wert "1" für alle anderen den Wert "0". Mit dem Variable Auswerten Block kann diese nun mit dem Parameter 

GermanCaller = 1

ausgewertet werden. Wahr = deutsche Ansage, False = engliche Ansage.

 

Da die Funktion im Startblock des Call Routings steht, ist Diese Variable für alle nachfolgenden Call Routings des Benutzers verfügbar.

Link to comment
Share on other sites


Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.