Jump to content

SwyxPhone automatisch abmelden


ChristianH

Recommended Posts

Hallo,

 

wir suchen eine Möglichkeit Swyxphones (L660) nach einer bestimmten Zeit der Inaktivität (ca. 8h) automatisch abzumelden. Der Hintergrund ist der, dass sich einige Kollegen nicht von ihren Swyxphones abmelden sobald sie in den Feierabend gehen und dann ihre Telefone auch am Wochenende, Feiertagen oder Urlaubstagen angemeldet bleiben. Es geht mir hierbei nicht darum, dass sie im SwyxIt als erreichbar angezeigt werden, sondern dass ihre Telefone von jedem genutzt werden können (Putzfrauen etc.)

 

Gibt es da eine elegante Lösung? Den PhoneManager-Dienst möchte ich eigentlich nicht jede Nacht durchstarten müssen.

 

MFG

 

 

Link to comment
Share on other sites


  • Most Valued User

Hallo Christian,

 

da wirst du wahrscheinlich selber etwas bauen müssen. Eine Lösung wäre ein Task Schedule auf dem Server laufen zu haben, der alle paar Minuten/Stunden ausgeführt wird und das Script triggert.

Die grundsätzliche Frage ist, woran erkannt werden soll, dass der Benutzer "inaktiv" ist. Eine Variante wäre die Wahlwiederholungsliste zu prüfen, wenn dort der letzte Eintrag >8 Stunden ist, dann den Benutzer abmelden.

 

Anbei ein Code Beispiel.

public JsonResult JsonPhoneLogoff(string username)
{
	// Get LibManager
	var libManagerIntern = new SWConfigDataClientLib.LibManager()
	{
		BaseProtocol = SWConfigDataClientLib.SProxyObject.BaseProtocol.TCP,
		WSBaseUrl = "localhost",
		//AuthenticationMode = SWConfigDataClientLib.SProxyObject.AuthenticationMode.Trusted // Trusted User needs to be Swyx-Sysadmin and needs an Swyx Profile for PhoneClient
	};

	// Admin Fac
	var adminFacade = libManagerIntern.GetAdminFacade();

	// Get UserId
	var userEnum = libManagerIntern.GetUserEnum();
	userEnum.ExecuteNameFilter(username, new SWConfigDataClientLib.Data.OrderByList());
	var userResult = userEnum.PrimaryCollection.CreateSortableFilterCollection().FirstOrDefault();

	var pcFac = libManagerIntern.GetPhoneClientFacade();
	//var lastCallIncoming = pcFac.GetUserPhoneCallList(userResult.UserID, false).CreateSortableFilterCollection().FirstOrDefault(); // depends, if matter or not
	var lastCallOut =  pcFac.GetRedialItems(userResult.UserID).CreateSortableFilterCollection().FirstOrDefault();

	// Check 8 Hours
	var dtNow = new SWConfigDataClientLib.Proxies.ComplexDataTypes.SDateTime(DateTime.Now);
	var dtNowBefore = new SWConfigDataClientLib.Proxies.ComplexDataTypes.SDateTime(DateTime.Now.AddHours(-8));
	string resultout = "";
	if (lastCallOut.DateTimeLocal.DateTime <= dtNowBefore.DateTime)
	{
		adminFacade.ForceLogoffUser(userResult.UserID); // if autologon is activated, the phone will reloggon automatically - switch off the autologon-mechanism to avoid it
		resultout = "abgemeldet!";
	}
	else
	{
		resultout = "nicht abgemeldet!";
	}

	// Freeing
	pcFac.FreeForReuse();
	userEnum.FreeForReuse();
	adminFacade.FreeForReuse();

	return Json(resultout, JsonRequestBehavior.AllowGet);
}

Viel Erfolg!

Link to comment
Share on other sites


  • Most Valued User

Allenfalls bleibst nur die Möglichkeit über einen Switch mit PoE und dort was scripten.

Hatte ein Kunde seiner Zeit realsiert, wenn Switch-Port PC link-down dann Zeitverzögert PoE an Port-Telefon Off.

 

Nur mal als Idee. ist denke nicht ganz so einfach zu realisieren.

 

Link to comment
Share on other sites


  • Most Valued User

Alternative:

- mit Hardware erschlagen: Master Slave steckdosenleisten nehmen, die das Netzteil vom Telefon ausschalten, wenn der PC aus ist.

- User per poweshell aus einer Gruppe "darf raustelefonieren" rausnehmen und am nächsten morgen wieder rein. Weiterleitungsregel für die Trunkgruppen nicht auf "jeder", sondern nur auf "Mitglieder der Gruppe"

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.