Monday, November 08, 2010 at 12:06 AM.

system.verbs.builtins.tcp.im.init

on init () {
	<<Changes
		<<8/9/02; 3:19:27 PM by JES
			<<Call the init scripts for all of the drivers.
		<<7/30/02; 3:11:50 PM by JES
			<<Initialize user.im.prefs.flConnectAtStartup to false.
		<<5/6/02; 8:06:00 PM by DW
			<<Created.
	if not defined (user.im) {
		new (tabletype, @user.im)};
	bundle { //prefs
		if not defined (user.im.prefs) {
			new (tabletype, @user.im.prefs)};
		if not defined (user.im.prefs.sorryMessage) {
			user.im.prefs.sorryMessage = "Sorry, I don't understand that."};
		if not defined (user.im.prefs.flLog) {
			user.im.prefs.flLog = true};
		if not defined (user.im.prefs.logName) {
			user.im.prefs.logName = "instantMessage"};
		if not defined (user.im.prefs.flConnectAtStartup) {
			user.im.prefs.flConnectAtStartup = false}};
	if not defined (user.im.drivers) {
		new (tabletype, @user.im.drivers)};
	bundle { //responders
		if not defined (user.im.responders) {
			user.im.responders = tcp.im.data.virginResponders}};
	if not defined (user.im.rpiHandlers) {
		user.im.rpiHandlers = tcp.im.data.virginRpiHandlers};
	if not defined (Frontier.protocols.im) {
		Frontier.protocols.im = tcp.im.data.protocolHandler};
	if not defined (user.callbacks.startup.tcpIm) {
		user.callbacks.startup.tcpIm = @tcp.im.callbacks.startup};
	bundle { //init drivers
		on initDrivers (adrdrivers) {
			local (adr);
			for adr in adrdrivers {
				try {
					while typeOf (adr^) == addressType {
						adr = adr^};
					if defined (adr^.init) {
						adr^.init ()}}}};
		initDrivers (@tcp.im.builtinDrivers);
		initDrivers (@user.im.drivers)};
	return (@user.im)};
bundle { //test code
	init ()}



This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.