world.ChatCallzChat

MUSHclient script function (Method) — introduced in version 3.39

Calls a zChat chat server (makes an outgoing call)

Prototype

long ChatCallzChat(BSTR Server, long Port);

Data type meanings

Description

Attempts to establish a chat call to another client using the zChat protocol.

Use ChatCall to call using the MudMaster chat protocol.

You specify the TCP/IP address and the port number. If the port number is zero the default chat port of 4050 is used.

Because of the asynchronous nature of TCP/IP a "good" status from this call does not necessarily mean you will establish a chat session, it just means it has succeeded in starting the process.

In order to establish a chat session, MUSHclient must:

1. Look up the name using the Domain Name Server (DNS) unless a dotted-decimal name was given - this may take a few seconds.
2. Connect to the chat server - this may take a few more seconds
3. Attempt to negotiate a chat session by sending "ZCHAT:" to the chat server
4. Await a response - this may take a while if the player at the other end is deciding whether to accept the connection or not.
5. Finally, if all goes well, the chat session is established.

To know if the session was really established you need to use the plugin callback routine "OnPluginChatNewUser" - this notifies you when a new user is established.

VBscript example

ChatCallzChat "123.45.67.89", 0     ' call on default port
ChatCallzChat "123.45.67.89", 4060  ' call on port 4060
ChatCallzChat "myfriend.hisdomain.com", 0    ' call on default port using name

Jscript example

ChatCallzChat ("123.45.67.89", 0);     // call on default port
ChatCallzChat ("123.45.67.89", 4060);  // call on port 4060
ChatCallzChat ("myfriend.hisdomain.com", 0);    // call on default port using name

PerlScript example

ChatCallzChat ("123.45.67.89", 0);     # call on default port
ChatCallzChat ("123.45.67.89", 4060);  # call on port 4060
ChatCallzChat ("myfriend.hisdomain.com", 0);    # call on default port using name

Python example

world.ChatCallzChat ("123.45.67.89", 0)     # call on default port
world.ChatCallzChat ("123.45.67.89", 4060)  # call on port 4060
world.ChatCallzChat ("myfriend.hisdomain.com", 0)    # call on default port using name

Lua example

ChatCallzChat ("123.45.67.89")     -- call on default port
ChatCallzChat ("123.45.67.89", 4060)  -- call on port 4060
ChatCallzChat ("myfriend.hisdomain.com")    -- call on default port using name

Lua notes

The Port argument is optional. If omitted it defaults to 4050.

Return value

eCannotCreateChatSocket: Cannot start call - perhaps all sockets are in use?
eCannotLookupDomainName: Cannot start looking up domain name
eOK: Call process started OK

Return code meanings

Related topic

Chat system

See also

FunctionDescription
ChatAcceptCallsAccepts incoming chat calls
ChatCallCalls a chat server (makes an outgoing call) using the MudMaster chat protocol
ChatDisconnectDisconnects a current chat call
ChatDisconnectAllDisconnects all current chat calls
ChatStopAcceptingCallsStops this world from accepting chat calls