WN

WN (https://www.wn.se/forum/index.php)
-   Förmedling av jobb och tjänster (https://www.wn.se/forum/forumdisplay.php?f=17)
-   -   Php/CGI - > ICQ (https://www.wn.se/forum/showthread.php?t=1763)

Thomas 2004-03-10 01:42

Planet Six Network (www.p6.com)

Vi behöver hjälp med att skriva (alt installera en färdig) ICQ-klient på in Linux burk, och att sedan även ta fram så man via cgi eller php skall kunna skicka icq-meddelanden via icqprotokollet.

Bra betalt som vanligt, och bråttom ; )

Kontakta Silon eller Mej via PM

WN

Thomas 2004-03-15 23:11

Silon och Jag lyckades göra denna funktion själva, resultatet finns nu att beskåda på vip.tv.nu (konto krävs, kostar inget än).

Resultatet blev en mjukvara som styr 5 st ICQ konton som enligt vår prognos tillsammans kan påminna runt 200 personer var 5 minut.

Tack till alla hjälpsamma personer.

WN

Jonas 2004-03-16 15:32

Annars finns det ett lättare sätt att sköta det hela på:

Kräver iof att användaren har ICQ installerat och att man verkligen orkar skriva meddelandena :P

Kod:

<?
function icq($icq) {
 * * * *// Check that $icq really is a number.
 * * * *if (!isint($icq))
 * * * *{
 * * * * * * * *die("Inget ICQ nummer");
 * * * *}

 * * * *// Output correct headers so that ICQ gets launched properly
 * * * *header("Content-Type: application/x-icq");
 * * * *header("Content-Disposition: attachment; filename=".$icq.".uin");

 * * * *// Fake the "Vignette StoryServer" tagline, which some ICQ clients check.
 * * * *echo "<!-- Vignette StoryServer 5.0 ".gmdate( "D M d H:i:s Y")." -->\n";

 * * * *// The data is in the form of an INI file.
 * * * *echo "[ICQ Message User]\n";

 * * * *// This is the paydirt field. It MUST be present.
 * * * *echo "UIN=".$icq."\n";

 * * * *// These fields can be empty but MUST be present for some ICQ clients.
 * * * *echo "Email=\nNickName=\nFirstName=\nLastName=\n";
}
?>

Kanske denna kunde vara till hjälp på något sätt?

#EDIT: Fixade så att det är en function :)

#EDIT2: Lade till kommentarer.

Thomas 2004-03-16 23:39

Citat:

Originally posted by MaStEr_Pr@Mar 16 2004, 13:32
Annars finns det ett lättare sätt att sköta det hela på.
Detta script gör en helt annan sak än det vi vill, om användaren är på sidan och laddar ner filen denna fil vet denne ju att programmet startar, och syftet är borta hehe ;)

WN

ZN 2004-03-17 01:06

Ser ingen logik i den där funktionen, hur har du tänkt den ska fungera?
isint() ska va is_int() om det är php också :)


Förr kunde man bara gå till urlen: wwp.mirabilis.com/scripts/WWPMsg.dll?fromemail=mail@adress&subject=detta%20ä r%20en%20test&from=testarn&to=icqnummer&body=hej

Fast nu har dom lagt in ett sånt roligt skriv-in-koden-på-bilden kontroll.

Thomas 2004-03-17 13:35

Citat:

Originally posted by Zed7@Mar 16 2004, 23:06
Fast nu har dom lagt in ett sånt roligt skriv-in-koden-på-bilden kontroll.
Jepp det krävs lite mer nu, skall man dessutom skicka till ett 1 - 200 på kort tid blir det svårt med såna metoder.

WN

Anders 2004-03-17 14:11

Citat:

Ursprungligen postat av WN
Citat:

Ursprungligen postat av Zed7
Fast nu har dom lagt in ett sånt roligt skriv-in-koden-på-bilden kontroll.

Jepp det krävs lite mer nu, skall man dessutom skicka till ett 1 - 200 på kort tid blir det svårt med såna metoder.

WN

Så ni ansluter direkt till servern som vilken annan klient som helt?

Thomas 2004-03-17 18:36

Citat:

Ursprungligen postat av lunne82
Citat:

Originally posted by -WN@Mar 17 2004, 11:35
Citat:

Ursprungligen postat av Zed7
Fast nu har dom lagt in ett sånt roligt skriv-in-koden-på-bilden kontroll.

Jepp det krävs lite mer nu, skall man dessutom skicka till ett 1 - 200 på kort tid blir det svårt med såna metoder.

WN


Så ni ansluter direkt till servern som vilken annan klient som helt?

Jepp precis, kör enligt de protokollet som nuvarande ICQ versioner kör.

WN

gabriel 2004-03-17 21:52

Citat:

Originally posted by WN@Mar 15 2004, 21:11
Silon och Jag lyckades göra denna funktion själva, resultatet finns nu att beskåda på vip.tv.nu (konto krävs, kostar inget än).

Resultatet blev en mjukvara som styr 5 st ICQ konton som enligt vår prognos tillsammans kan påminna runt 200 personer var 5 minut.

Tack till alla hjälpsamma personer.

WN

Du har ingen lust att beskriva närmare hur ni gick tillväga? Testade precis och det var ju grymt smidigt och intressant...

Anders 2004-03-18 00:02

Citat:

Originally posted by gabriel@Mar 17 2004, 19:52
Du har ingen lust att beskriva närmare hur ni gick tillväga? Testade precis och det var ju grymt smidigt och intressant...
Väldigt grovt (PHP-version):
Anslut till ICQ-servern med fsockopen(). Sen läser man lite om ICQ's protokoll tex på den här sidan så man vet vad man ska skicka/ta emot från servern. Sen är det "bara" göra det.

gabriel 2004-03-18 00:09

Citat:

Ursprungligen postat av lunne82
Citat:

Ursprungligen postat av gabriel
Du har ingen lust att beskriva närmare hur ni gick tillväga? Testade precis och det var ju grymt smidigt och intressant...

Väldigt grovt (PHP-version):
Anslut till ICQ-servern med fsockopen(). Sen läser man lite om ICQ's protokoll tex på den här sidan så man vet vad man ska skicka/ta emot från servern. Sen är det "bara" göra det.

Jo men har han gjort så eller kör han nån egen "lite-klient" som ligger i backgrunden och är uppkopplad mot icq:s servrar och sen matar han sin egen klient från php...

Jens 2004-03-18 01:35

Det är en helt fristående klient skriven i PHP som själv ansluter och loggar in på icqnätet och ligger igång i bakgrunden på våran server... med nära jämna mellanrum kollar den efter påminnelser att skicka :) Eller som tidigare nämnt är det 5 stycken klienter(därmed 5 olika UIN) som delar på arbetet ...

gabriel 2004-03-18 03:09

Citat:

Originally posted by Silon@Mar 17 2004, 23:35
Det är en helt fristående klient skriven i PHP som själv ansluter och loggar in på icqnätet och ligger igång i bakgrunden våran server... med nära jämna mellanrum kollar den efter påminnelser att skicka :) Eller som tidigare nämnt är det 5 stycken klienter(därmed 5 olika UIN) som delar på arbetet ...
ok...

letade lite på sidan om icq protokol o verkar som om spec. för version 5 inte finns...
Detta var riktigt intressant men är nog lite för omständigt för mig att göra...
nån som har koll på nått annat bra program för detta som kan köras i linux/bsd...

Anders 2004-03-18 13:06

Citat:

Originally posted by gabriel@Mar 18 2004, 01:09
letade lite på sidan om icq protokol o verkar som om spec. för version 5 inte finns...
Detta var riktigt intressant men är nog lite för omständigt för mig att göra...
nån som har koll på nått annat bra program för detta som kan köras i linux/bsd...

Jo, jag såg också att v5 inte fanns kvar. Men det stod ju att v2 används fortfarande av bla. Java-versionen av ICQ. Så den lär ju funka för att skicka ett meddelande eller två.

Visst kan det vara lite bökigt att göra, men du behöver ju bara göra det en gång sen är det ju klart. :)

gabriel 2004-03-18 16:25

Citat:

Ursprungligen postat av lunne82
Citat:

Ursprungligen postat av gabriel
letade lite på sidan om icq protokol o verkar som om spec. för version 5 inte finns...
Detta var riktigt intressant men är nog lite för omständigt för mig att göra...
nån som har koll på nått annat bra program för detta som kan köras i linux/bsd...

Jo, jag såg också att v5 inte fanns kvar. Men det stod ju att v2 används fortfarande av bla. Java-versionen av ICQ. Så den lär ju funka för att skicka ett meddelande eller två.

Visst kan det vara lite bökigt att göra, men du behöver ju bara göra det en gång sen är det ju klart. :)

så sant så...

"bara" en gång...

jag testade lite att skicak från php genom centericq men den kunde bara skicka till dom man redan hade i sin lista och att lägga till folk i listan gick inte genom php utan då var man tvungen att lägga till users inne i programet vilket är lite segt...

nicclas 2004-03-20 19:58

Skulle jag ha byggt en påminnelsetjänst baserad på ICQ så skulle jag installera mICQ som "klient" som kör i bakgrunden på servern och sedan skicka kommandon till mICQ via "remote-control"-scriptet som mICQ stöder. Kommandon till "remote-control" kan enkelt skrivas från CGI eller PHP eller annat, och genereras direkt från t.ex. en webbsida. Jag har provat detta, och det fungerar okej. Med denna lösning kan man också ta emot ICQ-mess om man är intresserad av det...

Thomas 2004-03-20 20:14

Citat:

Originally posted by nicclas@Mar 20 2004, 17:58
Med denna lösning kan man också ta emot ICQ-mess om man är intresserad av det...
Inga problem att ta emot i den Silon skrev till vip.tv.nu heller, funktionen finns men inte behovet som det är nu ...

Vi testade lite alternativ som nämns här i tråden men inget var stabilt nog samtidigt som den erbjöd möjlighet till multipla konton så man får lite kapacitet, sedan kan jag säga att det är inte så enkelt som att skiva ett script som "loggar in -> skickar ett meddelade -> loggar ut", det finns en hel del mer man behöver tänka på för pojkarna och flickorna på ICQ har observerat att denna metod kan användas att "få ut sitt budskap till en mottagaren som kanske inte alltid önskat informationen" om man säger så.

Här finns en bild http://vip.tv.nu/_gfx/_other/icq_vip_tv_nu.gif

WN

nicclas 2004-03-20 20:54

Med mICQ som klient i bakgrunden behöver du inte skriva något skript för att logga in och ut mellan du sänder meddelandena. Det är bara att skriva mICQ-kommandot direkt i "remote-control" filen. Behöver man flera klienter (ICQ-användare) så måste man förstås starta multipla klienter, men inte heller det borde vara något problem (har inte provat). mICQ har bra stöd för de flesta icq-protokoll och är stabilt! Se www.micq.org.

Men en PHP-baserad lösning fungerar säkert också bra.

Thomas 2004-03-20 21:44

Citat:

Originally posted by nicclas@Mar 20 2004, 18:54
Med mICQ som klient i bakgrunden behöver du inte skriva något skript för att logga in och ut mellan du sänder meddelandena. Det är bara att skriva mICQ-kommandot direkt i "remote-control" filen. Behöver man flera klienter (ICQ-användare) så måste man förstås starta multipla klienter, men inte heller det borde vara något problem (har inte provat). mICQ har bra stöd för de flesta icq-protokoll och är stabilt! Se www.micq.org.

Men en PHP-baserad lösning fungerar säkert också bra.

mICQ är en bra produkt, men att förlita sig på en sådan mjukvara till tjänster man tar betalt för kändes inte bra, vi saknade bland annat att kunna styra på sekunden när ett meddelande skickas iväg, med mICQ kunde man styra att ett meddelande skulle skickas iväg men inga fler detaljer som rätt sekund i mellan meddelanden och vilken IP som var host för meddelandet osv osv ..., så det gick inte tyvärr :/ ... funkar säkert bra om man inte behöver påminna 500 personer om att 21:00 filmen snart startar hehe ...

Att det går att modifiera är jag säker på, men som sagt när vi testade det förstod vi att det inte var det vi behövde, det var för "overkill" och svårt att greppa simpla funktioner, så jag bävade för eventuell felsökning när 2 000 meddelanden ligger i utlistan av betalande kunder ... hehe ...

Om man drar igång och bränner ut meddelande efter meddelande utan kontroll blir man lockad efter ca 20 st ...

Vi tog som dom säger "det säkra före det osäkra" ...

WN

nicclas 2004-03-21 12:50

Citat:

Om man drar igång och bränner ut meddelande efter meddelande utan kontroll blir man lockad efter ca 20 st ...
Jo, och loggar man in och ut för ofta så blir också "lockad". AOL/ICQ är naturligtvis vana vid folk som försöker använda deras meddelandesystem för SPAM och har försökt förhindra massutskick. Detta är synd, då t.ex. bloggar skulle vara intressant att "bevaka" via t.ex. ICQ. Där finns nog lägre betalningsvilja än för en tv-guide, men många intressenter om det är gratis.

Det kan dock bli lite "skakigt" att basera en betaltjänst på ett meddelandesystem (som ICQ) där man är utlämnad till AOL/ICQ och deras anti-spam-hinder, som ju kan ändras när som helst. En överenskommelse med AOL/ICQ vore bra, men är väl inget för en små-hackare ;)

Thomas 2004-03-21 13:31

Citat:

Originally posted by nicclas@Mar 21 2004, 10:50
Det kan dock bli lite "skakigt" att basera en betaltjänst på ett meddelandesystem (som ICQ) där man är utlämnad till AOL/ICQ och deras anti-spam-hinder, som ju kan ändras när som helst. En överenskommelse med AOL/ICQ vore bra, men är väl inget för en små-hackare ;)
Precis, och därför är ICQ påminnelser gratis för våra vipmedlemmar, annars kunde man säkert ta 5 öre per utskick eller nåt liknade.

Att första vara "utlämnad" till AOL och sedan tunnla vi en mjukvara som mICQ kändes som att ha 0 att komma med vid felsökning.

Detta grej kör man ju mest för det är kul och att jag inte sett nån köra liknade tidigare i Sverige, att det kommer bli strul vet man ju redan nu ... hehe...

WN

nicclas 2004-03-21 13:51

Nja, jag är inte säker på att jag håller med dig om mICQ, men naturligtvis är inte alla problem lösta genom att använda det. Du måste fortfarande skapa dig en meddelandekö som du tar meddelanden ifrån och pushar till mICQ med "lagom hastighet" (t.ex. med PHP). Det som är bra med mICQ är att du slipper implementera ICQ-protokollet, och att det sköter "keep alive" åt dig. Att göra samma sak med i ett PHP-script tycker jag låter svårt/omständligt/jobbigt. (PHP är inte det första språk jag tänker på när jag ska skicka binärdata, eller skriva trådade script.)

Jag är heller inte med på vad du menar med "och vilken IP som var host för meddelandet" som du säger att mICQ inte klarar av. Jag förstår heller inte "så jag bävade för eventuell felsökning när 2 000 meddelanden ligger i utlistan av betalande kunder". Är det gratis eller inte? "Precis, och därför är ICQ påminnelser gratis för våra vipmedlemmar" - Finns någon annan form av medlemskap för ICQ-påminnelser?

Men vi kanske ska avlsuta med att vara överens om att ICQ-påminneslser är cool, oavsett om de skickas direkt med PHP-script eller inte, eller om det är gratis, eller inte. =)

Thomas 2004-03-21 14:06

Citat:

Originally posted by nicclas@Mar 21 2004, 11:51
Är det gratis eller inte? "Precis, och därför är ICQ påminnelser gratis för våra vipmedlemmar" - Finns någon annan form av medlemskap för ICQ-påminnelser?
Vad snackar du om? du menar bara för det är gratis behöver det inte funka så bra som möjligt., eller menar du att hela reklamfria vip.tv.nu med 50+ kanaler skall vara gratis, jag är inte med?

I alla mina projekt tänker jag på besökaren i första hand och kanske därför har jag en sida med 100 - 200k svenska besökare om dagen, även om funktionen är gratis eller inte skall det funka och man skall ha tänkt på strul som kan uppstå redan i programmeringskedet! om det gäller pengar eller att sitta och svara på 300 arga mail om dagen är sak samma, lika jobbigt.

Om en funktion strular i en tjänst får det ju helheten att se illa ut det är helheten besökaren skall dega för.

Citat:

Det som är bra med mICQ är att du slipper implementera ICQ-protokollet, och att det sköter "keep alive" åt dig. Att göra samma sak med i ett PHP-script tycker jag låter svårt/omständligt/jobbigt. (PHP är inte det första språk jag tänker på när jag ska skicka binärdata, eller skriva trådade script.)
Dom problem är lösa och vi har en mjukvara som vi vet hur den är uppbyggd och som är "bit av kaka" att felsöka och bara de funktioner vi behöver, allt skrivet i php som vi behärskar.

Vi är nöjda med resultatet.

*morgonirriterad*.

WN

nicclas 2004-03-21 14:18

"eller menar du att hela reklamfria vip.tv.nu med 50+ kanaler skall vara gratis, jag är inte med?"

Ledsen att jag inte tagit reda på hur din sajt fungerar. Jag trodde att vip-delen var just för dessa meddelanden, men så var det väl inte då... Som sagt: ICQ-påminnelser är cool.

Thomas 2004-03-21 14:21

Citat:

Originally posted by nicclas@Mar 21 2004, 12:18
Ledsen att jag inte tagit reda på hur din sajt fungerar. Jag trodde att vip-delen var just för dessa meddelanden, men så var det väl inte då... Som sagt: ICQ-påminnelser är cool.
Skapa ett konto här och kolla vad vi gjort senaste 3 månaderna;) , vi kör gratis tills allt funkar 99.9%

vip.tv.nu/Login.html

WN

myapp 2004-03-22 19:36

Lam fråga. Men varför kör du inte på mail?
/Hannes

Marcus 2004-03-22 21:04

Citat:

Originally posted by myapp@Mar 22 2004, 17:36
Lam fråga. Men varför kör du inte på mail?
/Hannes

det ena utesluter väl inte det andra? alla har vi olika önskemål. alla har kanske inte sin mailklient igång som står och kollar efter nya mail en gång i sekunden :)

Thomas 2004-03-22 21:24

Citat:

Originally posted by myapp@Mar 22 2004, 17:36
Lam fråga. Men varför kör du inte på mail?
Mail, ICQ eller SMS finns som alternativ.

WN

gabriel 2004-03-23 01:30

nått som jag hade tyckt om vore möjlighet att få påminelse via nått eget program för sidan....

alltså jag laddar ner nån liten fil från er som sen kollar om nått program börjar åt mig om man nu har ett VIP konto...
så man slipper icq och mail...

hade ju inte behövt ta längre än 1 timma att utveckla och jag hade uppskattat det mer och jag hade definitivt betalat för ett vip konto om ni fixar den funktionen eftersom jag kör min icq på server via centericq så funkar inte det för mig med dem påminnelserna...

så när programet börjar poppar det upp ett mess på skärmen om att programet börjat...

Marcus 2004-03-23 01:38

då borde väl tvprogrammet.nu vara passande?

gabriel 2004-03-23 01:46

Jo det verkar väl bra men jag hade nog föredragit en liten klient som bara poppade upp efter jag valt på hemsidan då det verkar mer flexibelt och jag slipper den där knasiga saken...3.3 Mb installationsfil...inte för att jag har ont om utrymme men det känns onödigt när man bara vill ha en snabb liten påminnelse...går ju att fixa med ett program på 20 Kb...=)
dessutom om man kör FreeBSD så funkar ju inte det...

Marcus 2004-03-23 20:18

Citat:

Originally posted by gabriel@Mar 22 2004, 23:46
Jo det verkar väl bra men jag hade nog föredragit en liten klient som bara poppade upp efter jag valt på hemsidan då det verkar mer flexibelt och jag slipper den där knasiga saken...3.3 Mb installationsfil...inte för att jag har ont om utrymme men det känns onödigt när man bara vill ha en snabb liten påminnelse...går ju att fixa med ett program på 20 Kb...=)
dessutom om man kör FreeBSD så funkar ju inte det...

saken är ju iofs den att tvprogrammet-klienten också innehåller uppdateringsfunktioner för att läsa ner tvprogram-listorna lokalt, lägga in automatiska påminnelser (som matchas på programnamn o dyl.). men visst, 3.3MB verkar väl i mesta laget för att åstadkomma det men jag antar att de användt VB eller liknande och då blir det oftast lite overhead.

en simpel (plattformsoberoende) (java-)klient borde väl iofs inte vara några större problem att skriva för att ordna påminnelser utifrån programlistorna. går väl att reverseengineera rätt lätt :)

Thomas 2004-03-24 10:36

Många har redan ICQ installerat, det var så vi tänkte.

Citat:

Originally posted by marcuss@Mar 22 2004, 23:38
då borde väl tvprogrammet.nu vara passande?
Kanske, Whois ...

Citat:

föredragit en liten klient som bara poppade upp efter jag valt på hemsidan då det verkar mer flexibelt och jag slipper
Den som kan ta fram en sådan är välkommen att kontakta mej.

WN

Marcus 2004-03-24 13:41

Citat:

Ursprungligen postat av WN
Många har redan ICQ installerat, det var så vi tänkte.

Citat:

Ursprungligen postat av marcuss
då borde väl tvprogrammet.nu vara passande?

Kanske, Whois ...

jovisst, var därför jag vågade "tipsa" om det :rolleyes:

Pipen 2004-03-24 14:23

borde inte vara allt för svårt att göra det i Java, beror väll på hur ni lagrar det, men jag antar ni lagrar varje påminnelse i en mysql databas(?)

hnn 2004-08-16 21:58

Citat:

Ursprungligen postat av Thomas
Citat:

Ursprungligen postat av nicclas
Med denna lösning kan man också ta emot ICQ-mess om man är intresserad av det...

Inga problem att ta emot i den Silon skrev till vip.tv.nu heller, funktionen finns men inte behovet som det är nu ...

Vi testade lite alternativ som nämns här i tråden men inget var stabilt nog samtidigt som den erbjöd möjlighet till multipla konton så man får lite kapacitet, sedan kan jag säga att det är inte så enkelt som att skiva ett script som "loggar in -> skickar ett meddelade -> loggar ut", det finns en hel del mer man behöver tänka på för pojkarna och flickorna på ICQ har observerat att denna metod kan användas att "få ut sitt budskap till en mottagaren som kanske inte alltid önskat informationen" om man säger så.

Här finns en bild http://vip.tv.nu/_gfx/_other/icq_vip_tv_nu.gif

WN

Finns det någon möjlighet o få se hur scriptet sköter allting, dvs. källkod?

Jens 2004-08-16 22:37

Citat:

Ursprungligen postat av hnn
Citat:

Originally posted by -Thomas@Mar 20 2004, 21:14
Citat:

Ursprungligen postat av nicclas
Med denna lösning kan man också ta emot ICQ-mess om man är intresserad av det...

Inga problem att ta emot i den Silon skrev till vip.tv.nu heller, funktionen finns men inte behovet som det är nu ...

Vi testade lite alternativ som nämns här i tråden men inget var stabilt nog samtidigt som den erbjöd möjlighet till multipla konton så man får lite kapacitet, sedan kan jag säga att det är inte så enkelt som att skiva ett script som "loggar in -> skickar ett meddelade -> loggar ut", det finns en hel del mer man behöver tänka på för pojkarna och flickorna på ICQ har observerat att denna metod kan användas att "få ut sitt budskap till en mottagaren som kanske inte alltid önskat informationen" om man säger så.

Här finns en bild http://vip.tv.nu/_gfx/_other/icq_vip_tv_nu.gif

WN


Finns det någon möjlighet o få se hur scriptet sköter allting, dvs. källkod?

(Jag är Silon i sammanhanget för den som undrar, bytt namn på sistone). Vi ger inte ut källkoden för den men den som söker finner... ICQ protokollet finns väl dokumenterat. Det finns dessutom en klient i perl någonstans därute... (som kanske känns lite enklare att läsa ut än dom lite mer avancerade opensource klienterna).

www.stud.uni-karlsruhe.de/~uck4/ICQ/ - ICQ v8 protokollet

Perl scriptet hittade jag inte nu... ides inte lita så länge:)

Jens


Alla tider är GMT +2. Klockan är nu 01:34.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson