staging.inyokaproject.org

Mächtige Fernwartungs-Applikation mit simplem One-Click-Hilfesuch-Tool für den "Kunden"

Status: Ungelöst | Ubuntu-Version: Ubuntu 8.04 (Hardy Heron)
Antworten |

mpathy

Avatar von mpathy

Anmeldungsdatum:
23. Dezember 2004

Beiträge: 284

Hi Ihr!

Seitdem ich seit längerem beruflich mit "Premium"-(im Sinne von, wenn andere Firmen keine Lösung wissen kommen wir zum Einsatz.. *g*)-Kunden-Support für Windows- und PC-Probleme und allem drum rum zu tun habe, dort so langsam auch Linux, speziell Ubuntu Einzug erhält, und gleichzeitig natürlich mein Schwerpunkt privat darauf liegt, möglichst vielen Leuten Linux, speziell Ubuntu nahezubringen, in der Form, das ich ihnen für die ersten Wochen per Fernwartung Support gebe, und ich in meiner Arbeit mit zahlreichen netten, aber kommerziellen und windowsbasierten Tools zu tun habe, überlege ich mir nun, auf Basis meines bisherigen Wissens über die Möglichkeiten unter Linux eine möglichst umfassende Lösung zu programmieren bzw. aus bestehenden Programmen zusammen zu flicken ☺

Die "Linux-Support-Distribution", die mir vorschwebt, soll folgendes enthalten:

  • Kundenabwicklung / Ticketsystem

  • Fernwartung VNC/NX/RDP

  • Telefonie bzw. "Kommunikation" (konventionell / VoIP / andere Kommunikationsmittel)

  • einfach Datenübertragung von Rechner zu Rechner

  • Kommandos Remote ausführen

  • VPN

  • Routerkonfiguration (lokal & übers Tool auch beim Zielrechner, per UPnP oder Telnet?)

Natürlich werde ich das als Open-Source aufziehen. Meine Motivation ist neben dem eigenen Interesse für den Freundeskreis natürlich auch die Hemmschwelle bzgl. Linux in meiner Firma noch weiter abzubauen, und auch anderen Firmen, wenn sie ein mächtiges Support-Programm in den Händen halten, das ihnen viel Arbeit erspart, auch verstärkt Linux-Support anzubieten und somit auch Linux im kommerziellen Bereich zu pushen und damit Linux allgemein.

Wie ich mir die einzelnen Bereiche dieser Software vorstelle, hier mal im Kurzen. Da das Programm auch professionellen Ansprüchen genügen soll, ist das Szenario manchmal etwas businessorientierter als das für einen Einzeluser sein müsste. Deswegen auch das Wort Kunde, und dergleichen.

Extrem wichtig hierbei ist mir, das das Tool, das der "Kunde" bekommt, nichts weiter ist als ein Programm, das er nur startet und mehr nicht konfigurieren muss. Wenn er sich das zutrauen würde, würde er ja schließlich vermutlich keine Hilfe benötigen.

Die hier im Forum und woanders genannten Möglichkeiten, die ich las, beinhalten alle, das der "Kunde" seinen Router und dergleichen konfigurieren muss, das ist im echten Leben aber so einfach nicht realisierbar. Jemand, der einen Port oder ähnliches im Router freischalten kann, kommt auch sonst mit 80% der Probleme selber zurecht, es sei denn, er ist faul ☺ Alle anderen sind mit solchen Einstellungen genauso überfordert wie mit dem Problem, weswegen sie um Hilfe bitten.

Kundenabwicklung / Ticketsystem: Der Kunde ruft an, schildert sein Problem. Der Vorfall wird aufgenommen und in einer Datenbank abgelegt. Die Person, die es aufnahm kann, wenn gerade keine Anrufe aufzunehmen sind - oder aber eine andere Person, der man es delegiert hat oder sich den Vorfall selber herausgesucht hat, - sich den Vorfall aufrufen und hat nun alle Daten zum Kunden offen, Kontaktdaten und auch Infos zur Fernwartung. Ansonsten ist eine übliche Ticketsystem-Funktionalität vorhanden, wie bei den vielen entsprechenden Programmen auf dem Markt und Open-Source.

Fernwartung: Der Kunde bekommt einen Link zu einem direkt ausführbaren Tool, das nach einer kurzen Info im Systray verschwindet, in der ersten Generation denke ich, macht das nicht mehr, als im Systray zu sein, per Rechtsklick beendbar zu sein, per Rechtsklick eine Option zu bieten, die das Tool mit in die Sitzung aufnimmt, etc. - fürs erste reicht VNC, und kann erstmal nur die Grundfunktionalität...

1
2
3
4
5
#!/bin/bash
host='123.123.123.123' # die IP des Supporters
port='55555'   # ein beliebiger Port, den nur der Supporter freischalten muss
vncserver :1
vncconfig -display :1 -connect $host:$port

(wenn ich mal ein simples Beispiel aus dem Forum hier heranziehen darf.. nur um mal auf den Trichter zu kommen..)

..enthalten muss, später aber zu einem Tool ausgebaut werden kann, das seine Abhängigkeiten bei Bedarf selber installieren kann, zumindest unter Ubuntu, und neben VNC ggf. auch das viel flottere NX anbieten kann - dazu muss ich noch das Projekt FreeNX evaluieren - und als Fallback die X-Server-Einwahl. Und natürlich auch einen SSH-Server startet und wenn noch nicht geschehen einen supporter mit sudo account anlegt.

Programmiert werden würde das von meiner Seite natürlich eher in Python, meiner Lieblingssprache. Aber je nach aktiven Leuten die mitmachen kann man das ganze auch sprachlich freier gestalten.

Auf der Supportseite nimmt man Verbindung mit dem großen Supportprogramm auf. Aufgrund des Vorfalls, in dem man sich gerade befindet, kann man Punkte auswählen wie teils beschrieben, hier eine Auswahl:

  • Fernwartung VNC starten (öffnet VNC-Client mit der hinterlegten IP)

  • Fernwartung NX starten (öffnet NoMachine-Client mit der hinterlegten IP)

  • Fernwartung RDP starten (öffnet Remote Desktop - Client mit der hinterlegten IP / hier sehe ich noch Portprobleme muss ich evaluieren)

  • Fernwartung SSH starten (wenn man nur die Kommandozeile braucht)

  • Kunde anrufen / Kunden-Chat starten (Kontaktdaten auch hinterlegt, anrufen per SIP, Skype, etc. oder konventionell per Voice-Modem, dazu eben eine Chat-Möglichkeit)

  • Dateien übertragen (gibts auch diverse Möglichkeiten, die zu evaluieren sind)

  • Netzwerk des Kunden beitreten (VPN-Verbindung herstellen)

PS: Ich weiß, das es für fast alles seperate Tools gibt, aber so komfortabel, wie man es aus einer professionellen Hotline (echte PC-Experten, ohne Multiple-Choice-Fragen-Mitarbeiter) mit den entsprechenden Tools und Ideen kennt, geht das halt nicht.

Es gibt Linux-Tools für diverse Zwecke, es gibt:

  • CSpace

  • Hamachi

  • die diversen VNC-Implementierungen

  • OpenVPN

  • ..die man zwar teilweise 1:1 mit in die von mir gedachte Lösung implementieren könnte - teilweise aber auch nicht, wenn an der anderen Seite ein hilfesuchender DAU sitzt.

Zum anderen sind an so netten Tools wie dem Ruckzuck-Fernwartungs-Tool TeamViewer für Windows und Mac OS X und dem genialen Hamachi ein Problem: Sie laufen per Handshake auf den Servern der Firmen.

Der Handshake dort macht die Verbindung so easy - so einen Server stelle ich mir zur Version 2.0 dann auch vor, allerdings open-source und für jeden selber aufsetzbar wo er will - aber gleichzeitig ist dort das Problem, das der Server proprietär ist und keiner weiß, ob Hamachi oder TeamViewer auch nix mitschneiden an heiklen Daten!

Ich könnte jetzt noch viel schreiben, wollte euch meine - teilweise schon in Ansätzen realisierte - Idee von einer solchen "Lösung" vorstellen und gerne mit fachlich entsprechend bewanderten und an einer solchen Lösung ebenso interessierten Leuten darüber diskutieren.

Wenn ich sehe das Anklang genug da ist, werde ich ein Trac und eine Google Group aufsetzen, damit wir das gemeinsam realisieren.

Das kann was Großes werden, von dem sowohl der Linux-Freak im Privaten - der seiner Mutter bei nem Problem helfen bei deren Linux-PC helfen, den er ihr eingerichtet hat, aber nicht immer vor Ort sein kann - profitieren kann, als auch Firmen, die sich auf Linux-Support spezialisiert haben oder eben Firmen die nun mit verschiedenen Produkten auf Linux umsteigen wollen und wie unter Windows gewohnt professionell supporten wollen.

Wer hat Lust, sich zu beteiligen? ☺

Roger1993

Avatar von Roger1993

Anmeldungsdatum:
22. Juli 2007

Beiträge: 1266

*Meld*

Ich hätte Interesse aber du musst wissen dass ich nicht soo gut in Python bin um sowas realisieren zu können. Sprich du müsstest mich manchmal bei Problem in die richtige Richtung anstupsen.

Wenn dir das aber nichts ausmachen würde dann gib mir Bescheid.

NewtonsLaw

Anmeldungsdatum:
29. Januar 2008

Beiträge: 352

@ mpathy:

Ich hab dir eine PM geschrieben!

Finde das Projekt nicht schlecht, und würde gerne mit Programmier-Kenntnissen oder auch Dokumentations-Arbeiten (LaTeX, Übersetzungen, ...) dazu beitragen!

NewtonsLaw

Anmeldungsdatum:
29. Januar 2008

Beiträge: 352

Noch jemand da?

Vllt. könnte ja der Threadstarter mal was dazu sagen. Ob das nun gestartet wird oder nicht?

adun Team-Icon

Avatar von adun

Anmeldungsdatum:
29. März 2005

Beiträge: 8606

Ich schleuder einfach mal zwei Technologien in den Raum, macht vielleicht Sinn damit zu interagieren:

Kopfgeldjaeger

Anmeldungsdatum:
24. Dezember 2006

Beiträge: 1168

Ich interessiere mich auch ziemlich dafür. Hab' mich auch schon einiges mit Python/PyGTK beschäftigt (bin allerdings immer noch nicht gerade ein Pro darin...) Aber das kann man ja dann sehen ob ich absolut gar keine Hilfe bin 😉

mfg

suncity

Avatar von suncity

Anmeldungsdatum:
24. Februar 2007

Beiträge: Zähle...

@mpathy Ich interessiere mich auch sehr dafür.

Leider kann ich kein Python, aber ich würde gerne wie NewtonsLaw auch mit Dokumentationen, Übersetzungen beitragen! Wenn du noch jemand in der Richtung brauchst, meld dich bitte 😉

liberavia

Avatar von liberavia

Anmeldungsdatum:
29. November 2006

Beiträge: 343

Hi,

Dein Vorhaben scheint sich zumindest teilweise mit dem meinem Vorhaben zu decken:

http://wiki.fisi-itse.de/index.php/Callbuntu-Projekt

Aktuell auf Basis von Ubuntu-Server: http://wiki.fisi-itse.de/index.php/Callbuntu_mit_Ubuntu_Server_8.04.1

Den Namen Callbuntu kann ich aber wohl in die Tonne kloppen, weil ich damit Canonicals Trademark Policy verletzen würde (E-Mail-Anfrage ist versendet, aber noch nicht beantwortet). Siehe auch diese Diskussion:

http://forum.ubuntuusers.de/topic/armutszeugnis-fuer-canonical/

In dem Projekt soll ein installierbarerer Kommunikationsserver auf Basis von Ubuntu-Server herauskommen. Die Tools, die du planst würden sich denke ich auch gut auf einer solchen Distribution machen, da das Thema Fernwartung für ein Servicemodell unerlässlich wäre. Der ubuntuuser denga hat auch angefangen sich daran zu beteiligen und hat unter anderem die restricted modules für den Einsatz einer ISDN-Fritz karte gepatcht. Ein deb-Paket für eine Sirrix-ISDN-Karte hat er für den Generic-Kernel bereits geschrieben, für den server-Kernel ist es in Arbeit. Ich stürze mich derzeit auf die Weboberfläche für Asterisk, aktuell mit einer Wallboardapplikation.

Meine Motivation ist eine einfach installierbare, solide Basis für Kundeninstallationen zu haben. Hierbei gehe ich aber natürlich voll den Open-Source Weg 😉

Aus meiner Sicht sollte man sich zusammentun, anstatt nebeneinander zu entwickeln. Was denkst du/meint ihr?

Gruß

André

reever

Avatar von reever

Anmeldungsdatum:
3. Juni 2006

Beiträge: 755

Hmmm

Dann wolln wir doch mal mal ein schönes Kochrezept entwerfen, denn darum geht es nämlich hauptsächlich bei Linux.

Die Kombination der vorhandenen Programme/Tools u. Server/daemons

Man nehme :

Eine Prise LTSP mit einer angepassten Dosis LDAP, gepaart mit NX-Server

Die VPN-Geschichte sollte man mit einer externen Firewall Lösen. Mehr Sicherheit + einfachere Fehlersuche. Ich denke da an z.B. ( IPfire, Endian (proprietär), oder neu und vielversprechned auch in diese Struktur integriegrbar , Untangle)

Für VOIP kann man natürlich die nehmen, an die die Usewr schon gewöhnt sind.

Ansonsten lässt sich das ganze ja noch sehr flexibel, mittels vorhandener Linux-Applikationen gestalten.

Mpathy : schau doch mal im Repository unter "evms" ich glaube das kommt deinem Projekt schon sehr nahe. Zumindest was die Realisiierung im Serverbereich anbelangt

Gruss reever

Denga

Avatar von Denga

Anmeldungsdatum:
16. April 2007

Beiträge: Zähle...

Eine Prise ORTS sorgt für den richtigen Geschmack beim Ticketsystem 😉

Ich würde es auch begrüssen, wenn ihr euch mit dem Projekt von liberavia zusammen schließen würdet. Die Ziele stimmen in Teilbereichen überein und der Rest würde das jeweils andere Projekt noch ergänzen.

MfG

NewtonsLaw

Anmeldungsdatum:
29. Januar 2008

Beiträge: 352

Da ich vom Threadstarter bisher immer noch keine Antwort erhalten habe, würde ich mich gerne in das "andere" Projekt einbinden.

Wie gesagt sind Programmierkenntnisse in C/C++ und ein wenig in Python vorhanden, ebenfalls Kenntnisse was GUI-Programmierung angeht (MS Visual Studio 2005, aber QT4 ist da nicht weit entfernt).

Ansonsten koennte ich noch mit Dokumentationsarbeiten dienen, sprich LaTeX-Dateien erstellen (deutsch, englisch, französisch). Falls ihr noch Hilfe braucht, sagt Bescheid!!

Denga

Avatar von Denga

Anmeldungsdatum:
16. April 2007

Beiträge: 150

NewtonsLaw schrieb:

Da ich vom Threadstarter bisher immer noch keine Antwort erhalten habe, würde ich mich gerne in das "andere" Projekt einbinden.

Sein Verlust ist unser Gewinn 😉

Wie gesagt sind Programmierkenntnisse in C/C++ und ein wenig in Python vorhanden, ebenfalls Kenntnisse was GUI-Programmierung angeht (MS Visual Studio 2005, aber QT4 ist da nicht weit entfernt).

Ansonsten koennte ich noch mit Dokumentationsarbeiten dienen, sprich LaTeX-Dateien erstellen (deutsch, englisch, französisch). Falls ihr noch Hilfe braucht, sagt Bescheid!!

Wir sind momentan der Namensgebung einen Schritt näher gekommen 😉. Arbeit gibt es genug, es wird sicherlich einen guten Platz geben um deine Fähigkeiten einzusetzen. Wir erarbeiten gerade Möglichkeiten, um sich besser im Team auszutauschen und werden in kürze auf dein Angebot zurück kommen.

Freue mich das du helfen möchtest!

MfG

mpathy

(Themenstarter)
Avatar von mpathy

Anmeldungsdatum:
23. Dezember 2004

Beiträge: 284

Sorry habe mich lange nicht gemeldet, werde aber bis spätestens nächste Woche mal genau notieren was ich mir so überlegt habe und zudem die Fragen hier beantworten. Wollte mich nur melden damit es nicht aussieht als wäre das Projekt gestorben oder ich hätte die Motivation verloren.

liberavia

Avatar von liberavia

Anmeldungsdatum:
29. November 2006

Beiträge: 343

Also, wie gesagt, das was du vorhast, würde perfekt (natürlich nicht nur 😉 ) in das oben von mir genannte Projekt hineinpassen. Gerade im OpenSource Bereich ist der einfache Zugang zu Dienstleistungen wichtig. So etwas möchte man gerne anbieten können, wenn man OSS vertreibt und dafür wirbt, von der schnelleren Hilfestellungsmöglichkeit mal ganz zu schweigen.

Gerne unterstütze ich dein Vorhaben nach Kräften, bin aber derzeit in der Prüfungsvorbereitung und im Praktikum, wo ich für meine Einstellung und das Modell OS werben möchte.

Vielleicht setzt du am besten ein launchpad-Projekt auf und wir vernetzen unsere Projekte dort?

https://launchpad.net/~callbuntu-team

Ich selber bin derzeit schwer damit beschäftigt, eine erste Beta-Fähige Version der Weboberfläche zu entwerfen: https://launchpad.net/callbuntu-webgui

Viel Erfolg und Schöne Grüße

André

Antworten |