Telcom_Admin Posted August 24, 2017 #1 Share Posted August 24, 2017 Hallo liebes Forum Habe da wieder einmal einen Hänger... Mein Wunsch ist es, anhand einer Telefonnumer, in der Datenbank zu prüfen, ob dieser Kunde vorhanden ist. Wenn ja möchte ich gerne den Datensatz "Name" in eine Variable schreiben. Mein Ziel ist, dass ich später im Script diese Variable verwenden kann, um den Kundennamen im SwyxIt! anzuzeigen. Hier mal noch ein paar Zeilen Code, welcher ich einfach nicht weiter komme... 'SetName Name des Anrufers, wenn in der DB vorhanden, in die Variable sName setzen Function SetName PBXScript.OutputTrace "-----------> SetName" PBXScript.OutputTrace "sNumber = " & sNumber Dim bReturn1 ' open recordset1 Dim sSQL1 Dim rs1 Dim sName As String sSQL1 = "select Name from KEK1 where TELG = '" & sNumber & "'" PBXScript.OutputTrace "sSQL1 = " & sSQL1 Set rs1 = CreateObject("ADODB.Recordset") rs1.Open sSQL1, db, adOpenDynamic, adLockOptimistic, adCmdText if not rs1.EOF then PBXScript.OutputTrace "At least one recordsetfrom database received" PBXScript.OutputTrace "rs1(""NAME"") = " & rs1("NAME") sName = rs1!NAME else PBXScript.OutputTrace "No recordsetfrom database received" end if rs1.Close Set rs1 = Nothing SetName = bReturn1 PBXScript.OutputTrace "sName = " & sName PBXScript.OutputTrace "<----------- SetName" End Function Vielen lieben Dank für Anregungen und Feedbacks Grüsse aus der Schweiz Link to comment Share on other sites More sharing options...
Jochen Posted August 24, 2017 #2 Share Posted August 24, 2017 Hi Telcom_Admin, was genau meinst du denn? Wo du den Code einsetzt? In der Regel in den Startblock und dann in einem VB Block vor der Rufzustellung setname aufrufen. Oder du nimmst Visualcontacts das macht sowas automatisch. ;-) SQL Verbindung zur Datenbank und dieses zeigt dann den Namen an. Ist leider nicht umsonst. Grüße Jochen Link to comment Share on other sites More sharing options...
Telcom_Admin Posted August 24, 2017 Author #3 Share Posted August 24, 2017 Hi @Jochen Das Script ist im Startblock hinterlegt, im VB Block rufe ich es so auf (in der Hoffnung das es stimmt) ' TODO: Geben Sie hier Ihren Skript-Code ein UseExit = 0 ' Bitte verwenden Sie die Variable UseExit um die Block-Ausgänge 0..9 zu verwenden IpPbx.CallingName = SetName & IpPbx.CallingNumber Leider aber ja nicht sonst würde es ja gehen. Das mit Visualcontacts weiss ich Möchte es gerne trotzdem gerne hinkriegen Grüsse Link to comment Share on other sites More sharing options...
Jochen Posted August 24, 2017 #4 Share Posted August 24, 2017 Hi @Telcom_Admin, was meint denn das Trace bekommst du den Antworten aus der Abfrage? Die Function hat ja schon Traceausgaben (IpPbxSrv). Grüße Jochen Link to comment Share on other sites More sharing options...
Jochen Posted August 24, 2017 #5 Share Posted August 24, 2017 Das VB nochmal angeschaut, dem Returnwert wird das Ergebnis gar nicht zugeordnet. SetName = bReturn1 durch SetName = sName tauschen. Link to comment Share on other sites More sharing options...
Telcom_Admin Posted August 24, 2017 Author #6 Share Posted August 24, 2017 Hi @Jochen Line 111049: 24 15:22:09.432 0043e8 Inf2 SrvPBXCtl 06CE53E8 000002a3 SScriptFsm::ActionOnStartScript () Line 111050: 24 15:22:09.432 0043e8 Info SrvScrAPI 07074C00 000002a3 SScriptLoader::LoadScript (callrouting.vbs, U:64 Test) Line 111051: 24 15:22:09.458 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) callrouting.vbs', scope User Line 111052: 24 15:22:09.459 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) Templates_V4.3.vbs', scope SystemDefault Line 111053: 24 15:22:09.459 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) rulePreProcessing.vbs', scope Global Line 111054: 24 15:22:09.460 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) rulePostProcessing.vbs', scope SystemDefault Line 111055: 24 15:22:09.461 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) Functions.vbs', scope SystemDefault Line 111056: 24 15:22:09.462 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) actionStandardVoicemail.vbs', scope SystemDefault Line 111057: 24 15:22:09.463 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) actionStandardRemoteInquiry.vbs', scope SystemDefault Line 111058: 24 15:22:09.463 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) actionRedirection.vbs', scope SystemDefault Line 111059: 24 15:22:09.465 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) Resources.vbs', scope SystemDefault Line 111060: 24 15:22:09.486 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LdDiskVerify () valid GSE signature found Line 111061: 24 15:22:09.487 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile () Done loading (Success) ruleCheckKunde.vbs', scope User Line 111062: 24 15:22:09.488 0043e8 Info SrvScrAPI 070FA6B0 000002a3 SScriptHost::Initialize () loaded 'callrouting.vbs (User, Test)' with 627801 bytes in 0.055s Line 111063: 24 15:22:09.504 00638c *Err SrvScrAPI 057652A0 000002a3 SPBXScriptSite::OnScriptError () Line 111073: 24 15:22:09.505 00638c *Err SrvScrAPI 0832FA50 000002a3 SH::ScriptEngineThread::Main () failed, errorUnknown error 0x80020101 Line 111074: 24 15:22:09.505 00638c Info SrvPBXCtl 0D8A3C90 000002a3 SScrServer::OnScriptFinished () Line 111075: 24 15:22:09.505 00638c Inf2 SrvPBXCtl 0D8A3C90 000002a3 SScrServer::EventScriptFinished () Line 111076: 24 15:22:09.505 0043e8 *Err SrvScrAPI 070FA6B0 000002a3 SScriptHost::Initialize (Test) failed, error Unknown error 0x80020101 Line 111077: 24 15:22:09.506 0043e8 *Err SrvPBXCtl 0D8A3C90 000002a3 SScrServer::InitScript () script host init failed with 1 for U:64 Test Line 111078: 24 15:22:09.506 0043e8 Info SrvScrAPI 070FA6B0 000002a3 SScriptHost::Delete () script running, delay deletion, confCnt= 0 Line 111079: 24 15:22:09.506 00638c Info SrvScrAPI 0832FA50 000002a3 SH::ScriptEngineThread::Main () stopped script engine Line 111080: 24 15:22:09.506 0043e8 *Err SrvPBXCtl 06CE53E8 000002a3 SScriptFsm::ActionOnStartScript () Starting script failed Line 111081: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl 0D8A3C90 000002a3 SPBXCallHub::SetDisconnectReason (CallRoutingFailed, ext cause 0, U:0, T:0, '','',Unknown) stored Line 111082: 24 15:22:09.506 0043e8 Inf2 SrvPBXCtl 0D8A3C90 000002a3 SPBXCallHub::DiscAndRemoveAllCalls (CallRoutingFailed, ext cause 0) Line 111083: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl 0D8A3C90 000002a3 SPBXCallHub::DiscAndRemoveAllCalls () disconnecting call 06C822C8 Line 111084: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl 06C822C8 000002a3 SPBXCall::EventDisconnect (cause: CallRoutingFailed, ext cause: 0, discon. type: Normal) Line 111085: 24 15:22:09.506 0043e8 Inf2 SrvPBXCtl 0D8A3C90 000002a3 SPBXCallHub::RemoveCall (06C822C8) Leider nicht sooo viel... Link to comment Share on other sites More sharing options...
Jochen Posted August 24, 2017 #7 Share Posted August 24, 2017 Er kann das Script nicht ausführen. Das Spricht in der Regel für einen Fehler in der Syntax. Wir packen vor die Function immer noch ein Public bin mir nicht sicher ob du das brauchst. Ich würde mir hier jetzt Stück für Stück vorarbeiten: Erstmal nur die eine "leere" Funktion erstellen mit einer Logsausgabe. Diese dann aus einem VB Block aufrufen. Danach dort dann den Namen fest auf Test setzen, im VB Block jetzt zusätzlich noch den Name dann auf die Rückgabe ändern. Jetzt das SQL hinzufügen. Link to comment Share on other sites More sharing options...
Telcom_Admin Posted August 24, 2017 Author #8 Share Posted August 24, 2017 Danke fürs Feedback Werd nun mal eins nach dem anderen vorarbeiten Grüsse Link to comment Share on other sites More sharing options...
Telcom_Admin Posted September 4, 2017 Author #9 Share Posted September 4, 2017 Hallo @Jochen Vielen Dank nochmals für die Hilfe! Habe es nun erfolgreich hinbekommen. Grüsse aus der Schweiz. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.