Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Kick-Funktion (https://www.delphipraxis.net/11217-kick-funktion.html)

bla 2. Nov 2003 11:47


Kick-Funktion
 
So jetzt hab ich meinen eigenen Chat nur will ich jetzt nur noch eine Kick-Funktion einfügen. Am besten wäre es wenn es html wäre und zwar will ich, wenn ich "/kick username" eingebe das der dann gekickt wird könnt ihr mir helfen?? wäre sehr erfreut darüber danke im vorraus. der jenige der des für mich machen kann kriegt soweit möglich auch nen platz in meinem chat. danke
cya bla

Illuminator-23-5 2. Nov 2003 12:03

Re: Kick-Funktion
 
wie programmierst du den chat?
du könntest einen befehl an den entsprechenden Client schicken, der den Erkennt und dann die Verbindung trennt

S - tefano 2. Nov 2003 12:42

Re: Kick-Funktion
 
Genau, so isses eigentlich am besten. Wie schon gesagt teilst du dem Client mit dass er gekickt wird, der Client trennt die Verbindung von selbst.
So hast du - und jetzt kommt mein eigener Senf ;-) - auch die Möglichkeit, dass der Client dem User mitteilen kann, dass er gekickt wurde. Wenn du es einfach so machst dass du einfach die jeweilige Verbindung des Servers zum Client schlichtweg schließt, dann würd es beim Client so aussehen als wäre einfach ein Verbindungsfehler aufgetreten, und niemand sagt dem User dass er überhaupt gekickt wurde...

Bis dann,

S - tefano

bla 2. Nov 2003 13:16

Re: Kick-Funktion
 
ja alles schön und gut. ich will es so machen das da steht verbindung getrennt und er auch ne halbe stunde oder länger net die möglichkeit hat reinzukommen. also einfach gekickt des wars. naja würde mich freuen;)

Chris1986 2. Nov 2003 13:25

Re: Kick-Funktion
 
Hi
Den "/kick Username" Befehl fragst du am Besten mit der Copy-Funktion ab.

Delphi-Quellcode:
var msg: string; //Message, die eingetippt wurde
    username: string; //Wer soll gekickt werden?
begin
  if copy (msg,1,5) = '/kick'
    then begin
           username := copy (msg,7,length(msg)-6); //Der Username wird aus dem String gefiltert
         end;
end;
Das ist nur ein Denkansatz, wie du das erweiterst (z.B. mehrere User gleichzeitig kicken) ist deine Sache.

MfG
Christian

Chris1986 2. Nov 2003 13:27

Re: Kick-Funktion
 
Zitat:

Zitat von bla
und er auch ne halbe stunde oder länger net die möglichkeit hat reinzukommen. also einfach gekickt des wars. naja würde mich freuen;)

Also das wird jetzt schon schwieriger. Benutzt dein Server eine Datenbank, oder muss das auf der Client-Seite geregelt werden?

MfG
Christian

bla 2. Nov 2003 13:27

Re: Kick-Funktion
 
das hab ich jetzt nicht ganz kapiert

var msg: string; //Message, die eingetippt wurde <<was meint ihr damit?
username: string; //Wer soll gekickt werden?
begin
if copy (msg,1,5) = '/kick'
then begin
username := copy (msg,7,length(msg)-6); //Der Username wird aus dem String gefiltert
end;
end;

also /kick username=>fliegt?

S - tefano 2. Nov 2003 13:27

Re: Kick-Funktion
 
Naja, wie gesagt. Du schickst dem Client den Befehl dass er sich trennen soll, er machts von selbst ohne dass sein User Einfluss hat.
Du schreibst dir den Nick des Users zusammen mit der Uhrzeit an der du ihn gekickt hast in ne Datei. Jedes mal wenn sich ein Client anmeldet guckst du, ob sein Nick in der kick-Liste steht, und wenn er drinsteht vergleichst du die Uhrzeiten. Wenn es länger als eine Stunde her ist dass er gekickt wurde, dann darf er rein und du löscht seinen Eintrag aus der Liste.
Ich seh da kein Problem...
oder willst du nen fertigen Code haben? Ich glaube nicht dass es hier viele Leute gibt die das einfach so machen. Naja, einer würd mir schon einfallen der es sogar ohne gefragt zu werden macht, aber den Nick sag ich lieber nicht. Hinterher isser noch sauer auf mich.

Bis dann,

S - tefano

[Edit]Wie konntet ihr alle so schnell vor mir posten?! Da stimmt doch was nicht... also diesen Post am besten überlesen, dann klappts auch mit dem Nachbarn [/Edit]
[Edit2]Mit Message die Eingetippt wurde kann man es nicht ganz so gut beschreiben, da sie ja beim Client ankommt, und da wurde sie ja nicht eingetippt. Der Client bekommt ja die ganzen Nachrichten vom Server geschickt, und in msg steht dann die Nachricht drin. Und dann wird im Beispiel geprüft ob sich in der Message der Kick-Tag befindet, und dann wird entweder gekickt oder nicht. Der Username muss dann noch rausgefiltert werden, damit die Clients auch gucken können wer jetzt eigentlich gemeint ist. Wenn der Nick in der Msg mit dem eigenen übereinstimmt, geht der Client von selbst offline.
Naja, und wie das mit der halben Stunde möglich wäre hab ich ja oben schon geschrieben. ;-) [/Edit2]

Chris1986 2. Nov 2003 13:31

Re: Kick-Funktion
 
Zitat:

Zitat von bla
das hab ich jetzt nicht ganz kapiert

var msg: string; //Message, die eingetippt wurde <<was meint ihr damit?
username: string; //Wer soll gekickt werden?
begin
if copy (msg,1,5) = '/kick'
then begin
username := copy (msg,7,length(msg)-6); //Der Username wird aus dem String gefiltert
end;
end;

also /kick username=>fliegt?

Nein, die Funktion trennt noch keine Verbundungen. Sie zieht dir lediglich den Username aus einem String, der gekickt werden soll.

Lad deinen Quelltext mal hoch, sonst wissen wir ja garnicht, mit welchen Kompos du programmiert hast

MfG
Christian

bla 2. Nov 2003 13:32

Re: Kick-Funktion
 
schaut mal ich hab jez eine *.bat datei ok? und ich will da jetzt ne spezielle html-datei dranschließen usw. aber wenn ihr mir den fertigen code geben würdet wäre ich sehr froh und mega dankbar. danke im vorraus

cya bla

S - tefano 2. Nov 2003 13:36

Re: Kick-Funktion
 
Was macht denn die Bat-Datei? Ich vermute mal in der html-Datei is dann dein Chat-Formular Zeug drin, oder?
Wenn du uns etwas näher erklären könntest, wie dein Chat bislang arbeitet und auf welcher Plattform er läuft (eigenständiges Prog für Windows / Website, die auf nem Server liegt; was für Techniken du verwendest (PHP, JavaScript, MySQL oder so)), könnten wir dir besser helfen.

Bis dann,

S - tefano

bla 2. Nov 2003 13:36

Re: Kick-Funktion
 
es sieht ca. so aus (die server daten hab ich weggemacht.

[CODE] <?xml version="1.0" encoding="ISO-8859-1" ?>
- <funchat>
- <settings>
<maxLineCount>255</maxLineCount>
<maxSepareeLineCount>-1</maxSepareeLineCount>
<nick>Daywalker</nick>
<profile>http://www.masterpage.net.tc dauer afk pristontale zocken ...</profile>
<retryJoin>true</retryJoin>
<globalClickProtection>false</globalClickProtection>
<width>1024</width>
<height>712</height>
<render antiAliasEnabled="true" fractionalMetricsEnabled="false" />
<timestamp format="[HH:mm:ss]" />
<font id="text" name="Arial" style="bold" size="11" />
<font id="channelList" name="Arial" style="bold" size="11" />
<font id="userList" name="Arial" style="bold" size="11" />
<fileServer portRangeStart="80" portRangeEnd="96" />
<ring enabled="false" src="res:/res/sound/ring.wav" />
</settings>
- <plugins enabled="true" home="plugins">
<history file="$HOME/.funchat/funchat.log" />
- <roomsearch>
- <!-- put your <pattern/> here
-->
</roomsearch>
- <reaktor>
- <patterns enabled="true">
- <pattern>
<regexp>Hallo</regexp>
<replacement>Einen wunderschönen guten Tag</replacement>
</pattern>
</patterns>
<reconnect enabled="true" delay="2500" />
<keepalive enabled="true" delay="30" />
<away enabled="false" delay="300"><- afk</away>
<separeeAway enabled="true" delay="300" closing="true"><- afk</separeeAway>
<separeeWelcomeIncoming enabled="false">Sas geht in die Politik! H(G)eil Sas ._./) Stimmt für Sas by *.*</separeeWelcomeIncoming>
<separeeWelcomeOutgoing enabled="false">Hi :-)</separeeWelcomeOutgoing>
- <sound>
<event id="separeeJoin" enabled="false" src="res:sounds/separeeJoin.wav" />
<event id="separeeExit" enabled="false" src="res:sounds/separeeExit.wav" />
<event id="separeeMessage" enabled="false" src="res:sounds/separeeMessage.wav" />
<event id="message" enabled="false" src="res:sounds/message.wav" />
</sound>
<winamp enabled="false" message="Playing «%song_title [%song_length]»" />
</reaktor>
</plugins>
<server name="Reference Server" clientFactory="funchat.app.ReferenceClientFactory" />
- <proxy selectedType="none">
- <http>
<server>www-proxy.t-online.de:80</server>
<server>www-proxy.A1.srv.t-online.de:80</server>
<server>www-proxy.AC1.srv.t-online.de:80</server>
<server>www-proxy.B2.srv.t-online.de:80</server>
<server>www-proxy.BN1.srv.t-online.de:80</server>
<server>www-proxy.BO1.srv.t-online.de:80</server>
<server>www-proxy.BS1.srv.t-online.de:80</server>
<server>www-proxy.D1.srv.t-online.de:80</server>
<server>www-proxy.DD1.srv.t-online.de:80</server>
<server>www-proxy.DO1.srv.t-online.de:80</server>
<server>www-proxy.E1.srv.t-online.de:80</server>
<server>www-proxy.F1.srv.t-online.de:80</server>
<server>www-proxy.F2.srv.t-online.de:80</server>
- <!-- <server>put your server here</server>
-->
</http>
- <socks>
<server>203.199.36.210:1080</server>
<server>193.95.16.34:1080</server>
<server>213.97.103.215:1080</server>
<server>24.57.78.227:1080</server>
<server>63.147.222.25:1080</server>
- <!-- <server>put your server here</server>
-->
</socks>
</proxy>
</funchat>

bla 2. Nov 2003 13:37

Re: Kick-Funktion
 
das is ne *.xml datei <.<

Chris1986 2. Nov 2003 13:50

Re: Kick-Funktion
 
Zitat:

Zitat von bla
das is ne *.xml datei <.<

Ich dachte du programmierst das mit Delphi über die Indy-Html Kompos :wall:

bla 2. Nov 2003 13:52

Re: Kick-Funktion
 
öhm... ich hab verschiedene des war mit was anderem. zur zeit hab ich nur delphi druf und möchte damit ne kickfunktion reinbringen. könnt ihr mir helfe?

S - tefano 2. Nov 2003 14:04

Re: Kick-Funktion
 
Hatte ich jetz auch angenommen.
Zumindest ist das hier nicht die richtige Sparte für dein Problem, ob es überhaupt allgemein das richtige Forum ist... bin ich mir auch nicht so sicher.
Von daher... also ich für meinen Teil hab von sowas schonmal keine Ahnung, vielleicht solltest du lieber nach nem Forum das sich spezifisch mit solchen speziellen Web-Sachen beschäftigt.
Naja, hätt ich jetz vielleicht lieber nicht sagen sollen... aber hier wirst du wohl hauptsächlich auf Experten (und andere) zum Thema Anwendungssoftware für Windows mit Delphi finden...
Aber hier gibts bestimmt auch Leute die sich mit deinem Sachverhalt auskennen. Du musst nur warten bis jemand auf deinen Thread stößt.

Bis dann,

S - tefano

Chris1986 2. Nov 2003 14:10

Re: Kick-Funktion
 
Sorry, aber bei deinem Problem kann ich dir auch nicht helfen :shock:

bla 2. Nov 2003 14:13

Re: Kick-Funktion
 
hm.. wie mach ich ne kickfunktion mit delphi also wie mach ich es das der client sowas kann? könnt ihr mir da helfen? (also neu programmieren)

cya bla

Chris1986 2. Nov 2003 14:17

Re: Kick-Funktion
 
Zitat:

Zitat von bla
hm.. wie mach ich ne kickfunktion mit delphi also wie mach ich es das der client sowas kann? könnt ihr mir da helfen? (also neu programmieren)

cya bla

Also ertmal was Grundsätzliches:
Willst du eine eigenständige Chatsoftware mit Delphi schreiben, also eine *.exe
oder willst du einen Chat schreiben, der in eine Website integriert ist?

MfG
Christian

bla 2. Nov 2003 14:19

Re: Kick-Funktion
 
eigene software auf einen server basierend (eigenen)

cya bla

Chris1986 2. Nov 2003 14:24

Re: Kick-Funktion
 
Wie komplex soll der Chat denn werden?
- Verwaltung der Usernames in einer Datenbank?
- Nur ein Chatraum, oder mehrere?

Oder willst du ein kleines Prog schreiben, mit dem du dich auf einer Lan-Party mit anderen unterhalten kannst?

MfG
Christian

bla 2. Nov 2003 14:27

Re: Kick-Funktion
 
also der server hat knapp 400 räume das is alles eingestellt nur eben die admin funktion fehlt. also niemand kann gekickt werden. ist im stil von c4f wisst ihr nur die adminfunktion fehlt.

danke

Chris1986 2. Nov 2003 14:41

Re: Kick-Funktion
 
Vielleicht ne Blöde Frage, aber was ist c4f?

MfG
Christian

S - tefano 2. Nov 2003 14:41

Re: Kick-Funktion
 
Und was genau sollen wir jetz machen?
Wie du das prinzipiell gemacht wird, haben wir dir ja schon gesagt, musst dir nur nochmal die erste Seite durchlesen. Naja, und dieses XML Zeug was du uns da geschrieben hast zeigt ja auch, dass du dich ganz gut aus kennst.
Alles was du machen musst ist halt anstatt ne normale Message in den Chat zu schicken einfach dieses "kick/Username" in den Raum schicken. Auf Clientseite wird das ausgewertet, und die CLients deren Nick übereinstimmen trennen sich. Wenn der Chat eh schon funktioniert, musst du auf der Serverseite auch nix mehr machen, weil ja beide Seiten Nachrichten verschicken und empfangen können. Du musst halt nur im CLient einbauen dass er diesen kick-Tag erkennt und die Usernames vergleicht.

Bis dann,

S - tefano

bla 2. Nov 2003 14:44

Re: Kick-Funktion
 
c4f=chat4free
und ihrmeint wenn ich des da einbaue geht es? ich muss den html code einfach einbauen und dann durch eingabe von "kick/username" fliegt der?

S - tefano 2. Nov 2003 14:44

Re: Kick-Funktion
 
Jo, würd ich auch gerne wissen, also was c4f ist.

bla 2. Nov 2003 14:46

Re: Kick-Funktion
 
c4f=chat4free site: www.chat4free.de

S - tefano 2. Nov 2003 14:57

Re: Kick-Funktion
 
Fast. Du kannst es auf jeden Fall eingeben und an den Client verschicken. Aber der Client muss das halt erkennen können, das ist was du einbauen musst.

Bis dann,

S - tefano

bla 2. Nov 2003 15:02

Re: Kick-Funktion
 
hm.. mal ne frage jetzt nehmen wir an ich will es machen auf nen server könntihr mir mal schnell so nen html code machen (also mit server, chat, einlogge, ausloggen, kick-funktion,user liste) wäre ultra nett danke

Chris1986 2. Nov 2003 15:04

Re: Kick-Funktion
 
Sorry, ich kann kein html

bla 2. Nov 2003 15:05

Re: Kick-Funktion
 
nicht html. es soll eine *.exe-datei sein bei dem man einstellen kann welchen server es connacten soll wäre mega mega mega nett woah dafür würd ich alles geben danke im voraus

cya bla

S - tefano 2. Nov 2003 15:16

Re: Kick-Funktion
 
Außerdem wirst du es mit html nicht schaffen. Dazu brauchst du schon PHP. Und wo du es jetzt genauer geschildert hast, kann ich dir mit an Sicherheit grenzender Wahrscheinlichkeit sagen, dass dies hier das falsche Board für dein Problem ist.

Bis dann,

S - tefano

bla 2. Nov 2003 15:17

Re: Kick-Funktion
 
könnt ihr es aber vielleciht machen? :oops:

S - tefano 2. Nov 2003 15:18

Re: Kick-Funktion
 
Also hä?! Auf der einen Seite sagst du wir sollen dir nen html Code fertig machen der alles kann, und dann solls auf einmal wieder ne exe sein. Und selber machen willst du auch nix.
Also ich für meinen Teil schreib dir bestimmt kein ganzes Prog fertig und geb dir den Ource damit du deinen Namen druntersetzen kannst.

Bis dann,

S - tefano

S - tefano 2. Nov 2003 15:19

Re: Kick-Funktion
 
Warum willst du son Ding überhaupt haben? Es gibt doch bestimmt schon fertige Progs dafür.
Und wenns dir so wichtig ist, dann streng dich mal selber an und lern wie das geht. Auf diese Weise kommst du nicht weit, wenn du immer andere Leute fragst ob sie dir das fertig machen.

Bis dann,

S - tefano

bla 2. Nov 2003 15:19

Re: Kick-Funktion
 
es war nur ne bitte... naja wenn du net willst trotzdem danke

Chris1986 2. Nov 2003 15:50

Re: Kick-Funktion
 
Vieleicht bin ich saublöd, aber was willst du genau? Ein Chatprogramm oder ein Programm, das einen Chatserver, wie auch immer, verwaltet?

MfG
Christian

S - tefano 2. Nov 2003 16:58

Re: Kick-Funktion
 
Ich vermute er will sowas ähnliches wie einen IRC-Client, nur für ein anderes Chatprotokoll. Den dann als fertige Exe; und natürlich ohne selbst dran zu arbeiten ;-)

Bis dann,

S - tefano

Chris1986 2. Nov 2003 17:09

Re: Kick-Funktion
 
aaaaaaaaaaahhhhh. ich verstehe. :tongue:
Da wird er wohl kaum jemanden finden, der ihm das mal eben so programmiert.

MfG
Christian

bla 2. Nov 2003 20:05

Re: Kick-Funktion
 
bla war das nu so deutlich`?


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:19 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz