I was reading a story today about #theoldnet and how if you leave an “&” symbol at the end of an #email , it means you want the recipient to reply back. Does anyone remember this or still do this today? I don’t recall that being a thing or maybe it was and I didn’t notice. Gonna tag below with adjacent words in hopes of response.
#aol #bbs #vintagecomputing #retro #retrotech @ActionRetro #dialup #486 #windows95 #prodigy #netscape #icq #compuserve #angelfire #geocities #irc
"Everybody yapping "AGI achieved internally".
Life was easier in 2000s... ringtone debt scarier than agi.
source: Interview with 2000s PC User."
https://x.com/KaiLentit/status/1876301780050706596
#KaiLentit #x #twitter #techhumor #icq #2000 #msn #ai #agi
@renehamburg damals bezüglich #Jabber und #ICQ schon mein Gedanke:
Sollte im Play Store einen #Matrix Messenger geben der sich per Handynummer einrichten lässt.
Quasi Noob freundlich...
@erebion @inaruck #Scherheit bedeutet ja nicht nur #ITsec, sondern #InfoSec, #OpSec & #ComSec.
Gibt Gründe warum #XMPP+#OMEMO, #IRC & #eMail bis heute existieren ubd warum keiner mehr #AIM, #ICQ, #MSN, #BBM & Co. nutzt!
@compl4xx @Layer8 @nick @kuketzblog @marcel @mspro
Meine Rede...
Oder um es einfach zu erklären: Warum gibt es #HTTP(S) & #HTML sowie #eMail ( #IMAP & #SMTP) bis heute und keiner nutzt mehr #AOL, #MSN, #ICQ?
Wenn @signalapp / #Signal wegen #CloudAct geflipped wird wie #EncroChat, #ANØM & #SkyECC dann stehen Leute alternativlos in der shice ubd die ganzen "Sicherheitsversprechen" lösen sich in "#TrustMeBro!" und #Lügen auf.
Ich nutze meinen XMPP-Account seit Ewigkeiten und habe drölfzig Clients durch. Aber Kontakte erreichen mich darüber Problemlos!
@foone In particular, this code looks relevant:
sub incoming_process_packet
{
my $self = shift;
my $server;
my $packet;
# $DEBUG && warn "INCOMING: Reading incoming packet ...\n";
if (!defined($self->{'socket'}))
{
die "No socket!\n";
return;
}
my $sock = $self->{'socket'};
$self->{'user_uin'} = 0;
unless ($sock->recv($packet, 99999))
{
# croak "socket: recv2: $!";
print "Socket died! Opening a new...\n";
# open the connection
$self->{'socket'} =
new IO::Socket::INET(LocalPort => $self->{'port'},
Proto => "udp",
Type => SOCK_DGRAM,
Reuse => 1
) || croak "new: connect socket: $!";
$self->{'select'} = new IO::Select [$self->{'socket'}];
return;
}
if (!defined($packet))
{
die "No message!\n";
return;
}
my($version, $command, $sequence_number, $session_id, $zeroes,
$sequence_number2, $user_uin, $checksum);
$version = unpack("v", $packet);
if ($version == 2)
{
if ($DEBUG && $DEBUG_PACKET_DUMP)
{
print "\nIncoming packet:\n";
$self->dump_packet($packet);
}
($packet, $version) = extract_uword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);
($zeroes, $sequence_number2, $user_uin, $checksum, $session_id) =
(0, 0, 0, 0, 0);
}
elsif ($version == 3 || $version == 4)
{
# if ($DEBUG && $DEBUG_PACKET_DUMP)
# {
# print "\nIncoming encrypted packet:\n";
# $DEBUG_PACKET_DUMP && $self->dump_packet($packet);
# }
$packet = $self->decrypt_packet_v4($packet);
($packet, $version) = extract_uword($packet);
($packet, $session_id) = extract_uword($packet);
($packet, $zeroes) = extract_uword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);
($packet, $sequence_number2) = extract_uword($packet);
($packet, $user_uin) = extract_udword($packet);
($packet, $checksum) = extract_udword($packet);
}
elsif ($version == 5)
{
# if ($DEBUG && $DEBUG_PACKET_DUMP)
# {
# print "\nIncoming encrypted packet:\n";
# $self->dump_packet($packet);
# }
my($checkcode) = $self->find_checkcode_v5($packet);
$packet = $self->crypt_packet_v5($packet, $checkcode);
my($org_packet) = $packet;
($packet, $version) = extract_uword($packet);
($packet, $zeroes) = extract_udword($packet);
($packet, $user_uin) = extract_udword($packet);
($packet, $session_id) = extract_udword($packet);
($packet, $command) = extract_uword($packet);
($packet, $sequence_number) = extract_uword($packet);
($packet, $sequence_number2) = extract_uword($packet);
($packet, $checksum) = extract_udword($packet);
if ($DEBUG && $DEBUG_PACKET_DUMP &&
($DEBUG_ACK ||
($command ne $client_commands{'ACK'} &&
$command ne $client_commands{'KEEP_ALIVE'} &&
$command ne $client_commands{'KEEP_ALIVE_2'})))
{
print "\nIncoming decrypted packet:\n";
$self->dump_packet($org_packet);
}
}
else
{
$DEBUG && warn("Cannot handle version $version packets!!!\n");
return;
}
if ($DEBUG)
{
my $command_hex = &uword_to_hex($command);
my $sc = $client_commands_bynumber{$command};
if ($sc)
{
if ($DEBUG_ACK ||
($command ne $client_commands{'ACK'} &&
$command ne $client_commands{'KEEP_ALIVE'} &&
$command ne $client_commands{'KEEP_ALIVE_2'}))
{
warn "INCOMING: Got command " .
$client_commands_bynumber{$command} . " ($command/$command_hex) ",
"sequence $sequence_number, $sequence_number2\n";
}
}
else
{
warn "INCOMING: Got unknown command number $command/$command_hex ",
"sequence $sequence_number, $sequence_number2\n";
}
}
if ($command eq $client_commands{'ACK'}) {
# ack is special case, we ignore it for the moment
# TODO we should keep track of packets sent (hash, indexed
# by sequence number) and tick them off when they're
# ACK'd. Then resend things if they aren't. Fiddly.
$DEBUG && $DEBUG_ACK &&
warn "INCOMING: Got ACK for packet $sequence_number\n";
}
else
{
# common packet info
my(%packet_header) =
(
'version' => $version,
'command' => $command,
'seq_num' => $sequence_number,
'seq_num2' => $sequence_number2,
'user_uin' => $user_uin,
'checksum' => $checksum,
'session_id' => $session_id,
);
$self->{'packet_header'} = \%packet_header;
$DEBUG && $DEBUG_ACK &&
warn "INCOMING: Sending ACK for packet $sequence_number, ",
"$sequence_number2, random=$session_id\n";
# If this is a disconnect message we must not ack it, so the ack is
# done in receive_send_text_code if needed...
unless ($command == $client_commands{'SEND_TEXT_CODE'})
{
$self->send_ack($sequence_number, $sequence_number2);
}
if ($self->session_check_user_status($user_uin, 'OFFLINE'))
{
# User is set offline => we only allow session setup commands
if ($command != $client_commands{'LOGIN'} &&
$command != $client_commands{'OLD_USER_REG'} &&
$command != $client_commands{'NEW_USER_REG'} &&
$command != $client_commands{'NEW_USER_1'} &&
$command != $client_commands{'SEND_TEXT_CODE'})
{
print(">>NOT_LOGGED_IN:\n",
" user_uin=$user_uin\n");
$packet = "";
$self->send_packet($self->construct_packet("NOT_LOGGED_IN", $packet));
return 0;
}
}
# Update time stamp
if ($user_uin != 0 && $command != $client_commands{'LOGIN'})
{
$self->{'sessions'}{$user_uin}{'last_packet_received_time'} = time;
}
$self->session_kill_inactive_sessions();
my $command_name = "receive_" . lc($client_commands_bynumber{$command});
my $coderef = $self->can($command_name);
if ($command_name && $coderef)
{
# we've found a method that can process this type of packet
return $self->$command_name($packet);
}
else
{
# TODO: can't cope - what do we do with this packet!!
warn("UNKNOWN PACKET TYPE: '$command/",
&uword_to_hex($command),
"', sequence number '$sequence_number, $sequence_number2'");
$DEBUG && warn("INCOMING: Unknown packet dump: ", Dumper($packet), "\n");
return 0;
}
}
}
Here's another blast from the IM past… AOL Instant Messenger is back! Sort of! Although AIM shut down in 2017, the retro-aim-server project keeps it alive in modern, self-hosted server that supports ICQ, too. https://github.com/mk6i/retro-aim-server
I'm running an instance at oscar.schrockwell.com, so sign in with any screen name and come say hello! Client install directions here: https://github.com/mk6i/retro-aim-server/blob/main/docs/CLIENT.md
Haha amazing, AIM and ICQ live again!
@rysiek @agturcz that's not how you fix #TechIlliteracy, espechally since things changed for the better.
@monocles / #monoclesChat & @gajim / #gajim are quite easy, whereas @signalapp / #Signal demands #PII in the form of a #Phone number which is more often than not not legally obtainable without "#KYC" aka. "forced #SelfDoxxing" all whilst being an extremely #centralized, #SingleVendor & #SingleProvider solution that falls under #CloudAct ant thus cannot adhere to #GDPR & #BDSG!
"JuSt UsE sIgNaL !"
won't fix #TechIlliteracy but rather provide false sense of security to #TechIlliterates when the correct solution is to teach proper #TechLiteracy like @cryptoparty@chaos.social / @cryptoparty@mastodon.earth / #CryptoParty does...Otherwise we'd only perpetuate the #Enshittification-#Lifecycle as has happened with #AIM, #ICQ, #BBM and so many more...
If #Signal and @Mer__edith actually cared, they would've setup their system truly decentralized as an #OnionService over @torproject / #Tor!
Natürlich kannste der #Desinformation von #Diensteanbietern glauben, aber dann ist #WhatsApp auch #E2EE weil die #SSL nutzen (und mit der Logik auch #WeChat & #QQ - lol)!
Gerade weil wirkliche #InfoSec & #OpSec sowie #ComSec & #ITsec nur mit #Transparenz geht.
It's a good time to remember the long-forgotten programs like ICQ and QIP, where the only thing left from the good old ICQ is the "o-ou" sound. They already had their own emojis and icons, and in the latest versions even their own qip.ru account. But I agree, it was a good thing! It made ICQ more comfortable and interesting. Just a plugin like the one that fetched the current song from Winamp and put the title in ICQ status was worth a lot!
It was amazing that ICQ had an open protocol that allowed you to write your own clients. I remember a rebellious one under Mandriva Linux that I built from source code. It took an enormous amount of energy. Especially later with the encodings. But what joy it was when everything started working stably!
In the picture is my honeymoon with Linux. I started making these kinds of screenshots before it became mainstream
New Episode: hpr4258 :: Introduction and History of Using Computers
Introducing myself to the HPR community and going through my timeline of computer usage.
Hosted by @SolusSpider on Wednesday, 2024-11-27 is flagged as Clean and is released under a CC-BY-SA license.
Tags: #Oric, #Dragon, #Atari, #Acorn, #Amstrad, #Enterprise, #Amiga, #Windows, #Linux, #FoodBank, #IRC, #Newsgroups, #ICQ, #TuxJam.
Today on the #HackerPublicRadio #Community #Podcast
@briankrebs +9001%
I've seen how #tumblr got #enshittified and how #Musk ruined #Twitter into #Shitter...
"#Fediverse or #GTFO!" should be the motto, cuz only truly #decentralized #SocialMedia and Communications will survive...
Everything else, regardless if #TikTok, #Threads or #Discord will die like #ICQ before, whilst we'll all be able to use #ActivityPub, #IRC, #XMPP-#OMEMO and #PGP/MIME-encrypted #eMail forever...
El 15 de noviembre de 1996 se libera el programa de mensajería instantánea ICQ. Llamado originalmente Mirabilis fue creado por dos jóvenes israelíes en 1996. Llegó a tener más de 50 millones de usuarios activos y en 1998 fue adquirida por AOL por 287 millones usd. Desde abril de 2010 pertenece a la compañía rusa Mail.Ru que lo descontinuó el 26 de junio de 2024
#retrocomputingmx #ICQ
A project I am very passionate about is trying to gather as many donations as possible to launch some new services. If vintage IM clients like #MSNMessenger, #AIM and #ICQ are your thing, please consider donating! Every little helps, and even if you can't donate, spreading the word is also appreciated! https://escargot.chat/donate #EscargotChat