Jump to content

JoergG

Most Valued User
  • Content Count

    31
  • Joined

  • Last visited

  • Days Won

    1

JoergG last won the day on July 24 2015

JoergG had the most liked content!

Community Reputation

1 Neutral

About JoergG

  • Rank
    Member

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

870 profile views
  1. Hi, Wenn du dich gut mit VB-Script auskennst, kannst du dir die Funktion "gseQueue_ProcessCallByQueue" aus der "Template_V4.3.vbs" herausholen. (System Scope der Datenbank). Ich habe das mal vor längerer Zeit gemacht und eine DTMF Abfrage nach einem gewissen Timeout eingebaut ob der Anrufer weiter Warten oder einen Rückruf (Benachrichtigung via E-Mail an Agenten) tätigen möchte. Ich hab die Funktion aus der Template-V4.3.vbs herausgeholt, modifiziert, umbenannt (um Kollision mit Original Funktion zu vermeiden) und als Aktion wieder im Callrouting eingebunden. Leider finde ich den Quellcode nicht mehr, aber es funktionierte recht gut und der Anrufer verlor nicht seine "Warteposition" in der Queue wenn er weiter "warten" wollte. Grüße Jörg
  2. JoergG

    CDS-Api V12

    Hi @ All, Hat schon einer die neue CDS-Api via NuGet eingebunden ? Ich wollte mir eine REST-Api mit Aspnet Core 2.2 schreiben und habe mal die neuen Pakete eingebunden. Übersetzen des Paketes klappt ohne Probleme, bei der Ausführung z.B. im Debug bricht mir die Anwendung immer mit einer "System.IO.FileLoadException" ab. Die Datei oder Assembly "Newtonsoft.Json, Version=9.0.0.0 wurde nicht gefunden !? Habe ihr da schon ähnliche Erfahrungen gemacht, ist in den NuGet Abhängigkeiten vielleicht ein Fehler drin ? Grüße Jörg
  3. Hi @ All, After a lot of googling and testing on a laboratory server, maybe I found the cause. After I disabled TLS1.0 (server) in the registry, the problem occurred. RegKey: HKLM\SYSTEM\CurrentControlset\Control\SecurityProviders\SCHANNEL\Protokols\TLS 1.0\Server DisabledByDefault: DWORD=1 Enabled: DWORD=0 Original problem: Registration on a Netphone Client / SwyxIt with user / password works. The same user / password combination in the application (CDS-API) writes the above error. After activating TLS 1.0 (server) the registration works. best regarts Jörg
  4. Hi @ All, I have a problem to Connect a Netphone Server via CDS Api. CDS Api 11.32 Server Netphone 11.52 Windows 2016R2 Connect from CDS API to Server via IpPbx Username/Password Libmanager init: libManager = new LibManager(); libManager.BaseProtocol = SProxyObject.BaseProtocol.TCP; libManager.Username = "AdminUser"; libManager.Password = "AdminPw"; libManager.WSBaseUrl = "127.0.0.1"; libManager.AuthenticationMode = SProxyObject.AuthenticationMode.UsernamePassword; Trace Output: 29 13:13:54.209 0004 Verb CDSMgr CDSManager.NewRessourcen New Libmanager 29 13:13:54.298 0004 Info CDSClient LibManager.Initialize() () 29 13:13:54.298 0004 Alws CDSClient LibManager.Initialize() IpPbxCDSClientLib: PV:11.32.0.32 FV:11.32.0.105 29 13:13:54.299 0004 Alws CDSClient LibManager.Initialize() IpPbxCDSSharedLib: PV:11.32.0.14 FV:11.32.0.69 29 13:13:54.299 0004 Alws CDSClient LibManager.Initialize() Platform: x86 29 13:13:54.299 0004 Alws CDSClient LibManager.Initialize() FileCache: C:\Windows\system32\config\systemprofile\AppData\Local\T-Com\ActiveCallsDataService.exe\FileCache 29 13:13:54.300 0004 Info CDSClient LibManager.Initialize() DefaultTcpPort: 9094 29 13:13:54.300 0004 Info CDSClient LibManager.Initialize() DefaultHttpPort: 8094 29 13:13:54.300 0004 Info CDSClient LibManager.Initialize() RequestTimeout: 7500 29 13:13:54.305 0004 Info CDSClient LibManager.Initialize() done 29 13:13:54.316 0004 Alws CDSClient LibManager.WSBaseUrl 127.0.0.1 29 13:13:54.404 0004 Warn CDSClient AdminFacade. SecurityNegotiationException: SOAP security negotiation failed. See inner exception for more details. ~ ~Server stack trace: ~ at System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout) ~ at System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Security.TlsnegoTokenProvider.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.Security.CommunicationObjectSecurityTokenProvider.Open(TimeSpan timeout) ~ at System.ServiceModel.Security.SymmetricSecurityProtocol.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.Channels.SecurityChannelFactory`1.ClientSecurityChannel`1.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation operation, EndpointAddress target, Uri via, SecurityToken currentToken, TimeSpan timeout) ~ at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout) ~ at System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout) ~ at System.ServiceModel.Security.SecuritySessionClientSettings`1.ClientSecuritySessionChannel.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout) ~ at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) ~ ~Exception rethrown at [0]: ~ at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) ~ at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) ~ at System.ServiceModel.ICommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.ClientBase`1.System.ServiceModel.ICommunicationObject.Open(TimeSpan timeout) ~ at System.ServiceModel.ClientBase`1.Open() ~ at SWConfigDataClientLib.WCF.SWCFProxy`2.BeforeCall() ~ at SWConfigDataClientLib.WCF.SWCFProxy`2.CallContext..ctor(SWCFProxy`2 cCDSProxy) ~ at SWConfigDataClientLib.WCF.SWCFProxy`2.GetCallContext() ~ at SWConfigDataClientLib.Proxies.Admin.AdminFacade.GetUserAdminView1(Int32 GroupID, Boolean ShowUserFileSize, UserDeviceSmallMap& deviceMap) ~InnerException: Win32Exception Message The client and server cannot communicate, because they do not possess a common algorithm ~ at System.IdentityModel.SspiWrapper.AcquireCredentialsHandle(String package, CredentialUse intent, SecureCredential scc) ~ at System.ServiceModel.Security.TlsSspiNegotiation.AcquireDummyCredentials() ~ at System.ServiceModel.Security.TlsSspiNegotiation..ctor(String destination, Boolean isServer, SchProtocols protocolFlags, X509Certificate2 serverCertificate, X509Certificate2 clientCertificate, Boolean clientCertRequired) ~ at System.ServiceModel.Security.TlsnegoTokenProvider.CreateTlsSspiState(X509SecurityToken token) ~ at System.ServiceModel.Security.TlsnegoTokenProvider.CreateNegotiationState(EndpointAddress target, Uri via, TimeSpan timeout) ~ at System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout) 29 13:13:54.415 0004 Warn CDSClient AdminFacade.getException Exception will be interpreted as unspecified SSecurityAccessException 29 13:13:54.415 0004 Alws CDSClient LibManager.ResetPassword () Called after user name password authentification failed 29 13:13:54.418 0004 Warn CDSClient AdminFacade.getException SSecurityAccessException: Authentication failed: Username or password is incorrect. Can anyone help me ? Greetings Jörg
  5. Hi @ All, Gibt es eine Subscription die benachrichtigt wenn sich ein User von einem Endgerät z.B. Ip-Telefon oder Soft-Client an oder Abmeldet ? Die OfficeUCSubscription kann nicht genutzt werden, da alle Endgeräte den User-Status melden sollen. Ich habe schon einige Subscription Klassen getestet aber noch nichts passendes gefunden. Hat jemand einen Tip ? Danke und Gruß Jörg
  6. Hi Comminity, What ist the difference between .FreeForReuse() and .Dispose() ? Or what is the best practice to delete or get free my used ressources on libmanager, adminfacade and so on... Deutsch: Wo ist der Unterschied zwischen den Methoden .FreeForReuse() und .Dispose() z.b. beim Libmanager oder der Adminfacade. Oder wie kann ich meine Ressourcen am besten wieder frei geben.. Best Regarts Jörg
  7. Hi Community, Is there a subscription on the CDS that notifies when a client line is locked / disabled or unlocked / activated? Best Regards Jörg Auf Deutsch: Gibt es in der CDS Api eine Subscription die reagiert wenn bei einem Client die Line'Taste gesperrt oder entsperrt wird ? Grüße Jörg
  8. Hi Community, Hi Sebastian, So I ask the question in a different way: Is there a possibility in the CDR-API to realize an own name resolution for an outgoing call? I would like to realize a name resolution Central also with outgoing calls. Incoming it is easily possible via GSE. For example, if the called name and the destination name are empty, that is, a name resolution against a private or the global phone book failed, I would like to try another resolution against a database and add the missing data if necessary. These supplements should then be seen in the CDR and in the administration console under "Active Calls". Even VisualContacts only resolves the name of outgoing calls in the local call journal. This information is missing in the CDR. That's the case on my test server. In German: Also ich stelle die Frage mal anders: Gibt es eine möglichkeit in der CDR-API um bei einem Ausgehenden Anruf eine eigene Namensauflösung zu verwirklichen ? Ich möchte Zentral auch bei Ausgehenden Anrufen eine Namensauflösung verwirklichen. Eingehend ist es ja via GSE problemlos möglich. Wenn zum Beispiel der Gerufene Name und der Ziel Name leer sind, also eine Namensauflösung gegen ein Privates oder das globale Telefonbuch fehlgeschlagen ist, möchte ich eine weitere Auflösung gegen eine Datenbank versuchen und die fehlenden Daten ggf. hinzufügen. Diese Ergänzungen sollen dann in der CDR und in der Administrationskonsole unter "Aktive Rufe" zu sehen sein. Selbst VisualContacts löst ja nur in dem lokalen Rufjournal den Namen bei abgehenden Gesprächen auf. Im CDR fehlen diese Informationen. Auf meinem Testserver ist das zumindest so. Best Greetings Jörg
  9. Hi Sebastian, Google translator: I've written a server service that reads, filters and displays the ActiveCalls in a web page. I want to populate the name resolution, that is, name fields that are empty if they are located in an external database (for example, VisualContact). Locally within my application everything works, entries for incoming and outgoing calls are completed and displayed. Now I would also like to complete the global entries in the server so that I hope that the names were found, then appear in the call logs on the client and in the CDR of the server. in German: Ich habe einen Serverdienst geschrieben, der die ActiveCalls ausliest, filtert und in einer Webseite darstellen kann. Ich möchte die Namenauflösung , also Namensfelder die Leer sind auffüllen, wenn diese in einer externen Datenbank zu finden sind (z.B. an VisualContact/MetaDirectory). Lokal innerhalb meiner Applikation klappt alles, Einträge für eingehende und ausgehende Anrufe werden vervollständigt und angezeigt. Nun möchte ich die Globalen Einträge im Server ebenfalls vervollständigen, Ich hoffe das die Namen die gefunden wurden, dann auch in den Anruflisten am Client und im CDR des Servers auftauchen. Greetings
  10. Hello Sebastian, Hmm .. Ok .. GSE Scripts not work outgoing .. this is correctly ?! on Incomming Calls i use GSE. I would like to realize this also for outgoing calls. Jörg
  11. Hi Community, Found follow entry in CDS Docu: by "Remarks" ->The item will not be stored in database directly. To effect the database use the method update() of ActiveCallFacade Who can i find the "ActiveCallFacade" ? Or who can i modify an Activecallentry on Database/Server ? I want to add/modify no found Names (CallerName, OrginationName, DestinationName) in ActiveCallEntrys .. in a Local Collection no Problem (view via Website) , on Server Collection (view in Adminconsole ) no effect. Greetings Jörg
  12. Hi @ All, I add a new pseudo federal state for Bayern. Mariä Himmelfahrt is not a holiday anywhere in Bayern. I had modified vs_FS_BY without Mariä Himmelfahrt as Standard and a new "pseudo" federal state vs_FS_BYMH with Mariä Himmelfahrt. The new Script: ' Federal States of Germany const vb_FS_BW = 1 ' Baden-Württemberg const vb_FS_BY = 2 ' Bayern ohne MarieaHimmelfahrt const vb_FS_BE = 4 ' Berlin const vb_FS_BB = 8 ' Brandenburg const vb_FS_HB = 16 ' Bremen const vb_FS_HH = 32 ' Hamburg const vb_FS_HE = 64 ' Hessen const vb_FS_MV = 128 ' Mecklenburg-Vorpommern const vb_FS_NI = 256 ' Niedersachsen const vb_FS_NW = 512 ' Nordrhein-Westfalen const vb_FS_RP = 1024 ' Rheinland-Pfalz const vb_FS_SL = 2048 ' Saarland const vb_FS_SN = 4096 ' Sachsen const vb_FS_ST = 8192 ' Sachen-Anhalt const vb_FS_SH = 16384 ' Schleswig-Holstein const vb_FS_TH = 32768 ' Thüringen const vb_FS_KD = 65536 ' Köln/Düsseldorf (Rosenmontag) const vb_FS_BYMH = 131072 ' Bayern mit Maria Himmelfahrt '------------------------------------------------------------------- ' Name: IsPublicHoliday ' =============== ' ' Returns true if the given date is a public holiday in the given German ' federal state. Multiple federal states can be combined with "OR" ' ' Parameter: ' nFederalState single or combination of federal states ' vCheckDate vbscript date to check (e.g. as returned by now) or ' "" (for current date) ' ' Returns: ' Boolean True = is public holiday ' '-------------------------------------------------------------------- Function IsPublicHoliday ( nFederalState, vCheckDate ) On Error Resume Next PBXScript.OutputTrace "-------> IsPublicHoliday" PBXScript.OutputTrace "nFederalState = " & nFederalState PBXScript.OutputTrace "vCheckDate = " & vCheckDate Dim bReturn bReturn = False Dim a, b, c, d, e, f Dim nTempYear, vTempDate Dim Neujahr, Erscheinungsfest, Karfreitag, Ostersonntag, Ostermontag Dim Maifeiertag, Rosenmontag, ChrHimmelfahrt, Pfingstmontag, Fronleichnam Dim MarieaHimmelfahrt, Tagdereinheit, Reformationstag, Allerheiligen Dim BussUndBettag, Weihnachten1, Weihnachten2 if not IsDate(vCheckDate) then vCheckDate = Now vTempDate = DateSerial(Year(vCheckDate), Month(vCheckDate), Day(vCheckDate)) nTempYear = Year(vTempDate) PBXScript.OutputTrace "Using nTempYear = " & nTempYear PBXScript.OutputTrace "Using vTempDate = " & vTempDate ' Gauss Formular a = nTempYear Mod 19 b = nTempYear \ 100 c = (8 * b + 13) \ 25 - 2 d = b - (nTempYear \ 400) - 2 e = (19 * (nTempYear Mod 19) + ((15 - c + d) Mod 30)) Mod 30 if e = 28 then if a > 10 then e = 27 end if elseif e = 29 then e = 28 end if f = (d + 6 * e + 2 * (nTempYear Mod 4) + 4 * (nTempYear Mod 7) + 6) Mod 7 ' Calculate public holidays Neujahr = DateSerial(nTempYear, 1, 1) Erscheinungsfest = DateSerial(nTempYear, 1, 6) Ostersonntag = DateSerial(nTempYear, 3, e + f + 22) Rosenmontag = DateSerial(nTempYear, 3, e + f + 22 - 48) Karfreitag = DateSerial(nTempYear, 3, e + f + 22 - 2) Ostermontag = DateSerial(nTempYear, 3, e + f + 22 + 1) Maifeiertag = DateSerial(nTempYear, 5, 1) ChrHimmelfahrt = DateSerial(nTempYear, 3, e + f + 22 + 39) Pfingstmontag = DateSerial(nTempYear, 3, e + f + 22 + 50) Fronleichnam = DateSerial(nTempYear, 3, e + f + 22 + 60) MarieaHimmelfahrt = DateSerial(nTempYear, 8, 15) Tagdereinheit = DateSerial(nTempYear, 10, 3) Reformationstag = DateSerial(nTempYear, 10, 31) Allerheiligen = DateSerial(nTempYear, 11, 1) BussUndBettag = DateSerial(nTempYear, 12, 25) - Weekday(DateSerial(nTempYear, 12, 25), vbMonday) - 4 * 7 - vbWednesday Weihnachten1 = DateSerial(nTempYear, 12, 25) Weihnachten2 = DateSerial(nTempYear, 12, 26) ' Is public holiday? select case vTempDate case Neujahr bReturn = True case Erscheinungsfest if (nFederalState and (vb_FS_BW or vb_FS_BY or vb_FS_ST or vb_FS_BYMH)) then bReturn = True case Ostersonntag bReturn = True case Rosenmontag If(nFederalState and (vb_FS_KD)) then bReturn = True case Karfreitag bReturn = True case Ostermontag bReturn = True case Maifeiertag bReturn = True case ChrHimmelfahrt bReturn = True case Pfingstmontag bReturn = True case Fronleichnam if (nFederalState and (vb_FS_BYMH or vb_FS_BW or vb_FS_BY or vb_FS_HE or vb_FS_NW or vb_FS_RP or vb_FS_SL or vb_FS_SN or vb_FS_TH)) then bReturn = True case MarieaHimmelfahrt if (nFederalState and (vb_FS_BYMH or vb_FS_SL)) then bReturn = True case Tagdereinheit bReturn = True case Reformationstag if (nFederalState and (vb_FS_BB or vb_FS_MV or vb_FS_SN or vb_FS_ST or vb_FS_TH)) then bReturn = True case Allerheiligen if (nFederalState and (vb_FS_BYMH or vb_FS_BW or vb_FS_BY or vb_FS_NW or vb_FS_RP or vb_FS_SL)) then bReturn = True case BussUndBettag if (nFederalState and (vb_FS_SN)) then bReturn = True case Weihnachten1 bReturn = True case Weihnachten2 bReturn = True end select IsPublicHoliday = bReturn PBXScript.OutputTrace "bReturn = " & bReturn PBXScript.OutputTrace "<------- IsPublicHoliday" End Function Best Regards, Jörg
  13. Hello Sebastian, Thanx for this information. Now waiting for the new SDK :-) Greetings
  14. Hi @ All, Is there an incompatibility with an old CDS Api to new Swyx/Netphone 11 ? I become Following Error on two of my Applications: The Error is by getting filtered UserEnum , this by all UserEnum.ExecutexxxFilter() methods reproduced. Logfile Snipped: Alws CDSClient LibManager.Initialize() IpPbxCDSClientLib: PV:9.30.0.11 FV:9.30.0.70 Alws CDSClient LibManager.Initialize() IpPbxCDSSharedLib: PV:9.30.0.11 FV:9.30.0.54 Alws CDSClient LibManager.Initialize() Platform: x86 Verb IWA IpPhoneWorkAround.IpPhoneWorkAround New UserEnum *Err CDSClient UserEnum. ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: key ~ bei System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) ~ bei SWConfigDataClientLib.Proxies.Users.UserPrimaryCollection.AddToKeyDictionaries(Object entry) ~ bei SWConfigDataClientLib.SArrayList.Add(Object entry) ~ bei SWConfigDataClientLib.Proxies.Users.UserPrimaryCollection.Add(UserEntry entry) ~ bei SWConfigDataClientLib.Proxies.Users.UserEnum.ExecuteIDFilter(Int32 UserID) by this c# Code snipped: var myUserEnum = myLibManager.GetUserEnum(); myUserEnum.Clear(); myUserEnum.ExecuteIDFilter(UserID); Best regarts Jörg p.s. Sorry for my English ;-)
  15. Hi, I reactivate this thread, I'm tested this with the new Version 11 of Netphone Server. This Bug is in this allways avaible. Greetings..
×
×
  • 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.