AGWAPI
Unit AGWAPI

Classes
TAGWAPI

Types
TOnAGWReady
TOnAX25Connect
TOnAX25Disconnect
TOnAX25Receive
TOnBeacon
TOnConnect
TOnData
TOnDebug
TOnDigi
TOnDisconnect
TOnMonitor
TOnMonitorData
TOnPort
TOnRaw
TOnRawDecode
TOnRead
TOnRegister
TOnRetryOut
TOnUnProto


TAGWAPI
Hierarchy     Properties     Methods     Events

This class implements all the events, methods and properties to develop applications for the

AGW Packet Engine using the WinSockets API.

Unit
AGWAPI

Description
The TAGWAPI class encapsulates the functionality to interact with the AGW Packet Engine from George Rossopoulous (SV2AGW) thru the following facilities:

•	Low Level access to the WinSocket facilities with minimum pre-processing.

•	Mid Level set of Properties, Methods and Events to hide the details of the AGW PE management.

•	High Level set of Properties, Methods and Events to implement the AX.25 Link Management (connection management), a Layer 2 digipeater and a Beacon.

The functionality is implemented thru the AGWAPI VCL object for Inprise's Delphi 5, but equivalent functionality (same methods, properties and events) are implemented on the AGWAPIX class implemented thru the ActiveX control AGWApiXControl. Both controls are set at the same level, and factually the ActiveX control is derived automatically from the VCL control thru the Inprise's ActiveX wizard technology.


TAGWAPI.Hierarchy

Unit
AGWAPI

Hierarchy

TObject
   |
TPersistent
   |
TComponent
   |
TControl
   |
TWinControl
   |
TAGWAPI


TAGWAPI.properties
TAGWAPI properties
TAGWAPI     Legend

Unit
AGWAPI

In TAGWAPI

		Active
		Address
		AGWAPIVersion
		AGWVersion
		AX25
		Beacon
		BeaconAuto
		BeaconCall
		BeaconEvery
		BeaconId
		BeaconPid
		BeaconText
		CallSign
		Debug
		Digi
		DigiAuto
		DigiCall
		Kiss
		Log
		LoopBack
		LoopBackPort
		Monitor
		MonitorMask
		Poll
		Port
		PortMax
		Register
		Retry
		Trace

Derived from TWinControl

		BevelEdges
		BevelInner
		BevelKind
		BevelOuter
		BevelWidth
		BorderWidth
		Brush
		ControlCount
		Controls
		Ctl3D
		DefWndProc
		DockClientCount
		DockClients
		DockManager
		DockSite
		DoubleBuffered
		Handle
		HelpContext
		ImeMode
		ImeName
		OnDockDrop
		OnDockOver
		OnEnter
		OnExit
		OnGetSiteInfo
		OnKeyDown
		OnKeyPress
		OnKeyUp
		OnMouseWheel
		OnMouseWheelDown
		OnMouseWheelUp
		OnUnDock
		ParentCtl3D
		ParentWindow
		Showing
		TabOrder
		TabStop
		UseDockManager
		VisibleDockClientCount
		WheelAccumulator
		WindowHandle

Derived from TControl

		Action
		ActionLink
		Align
		Anchors
		AutoSize
		BiDiMode
		BoundsRect
		Caption
		ClientHeight
		ClientOrigin
		ClientRect
		ClientWidth
		Color
		Constraints
		ControlState
		ControlStyle
		Cursor
		DesktopFont
		DockOrientation
		DragCursor
		DragKind
		DragMode
		Enabled
		Floating
		FloatingDockSiteClass
		Font
		Height
		Hint
		HostDockSite
		IsControl
		Left
		LRDockWidth
		MouseCapture
		OnCanResize
		OnClick
		OnConstrainedResize
		OnContextPopup
		OnDblClick
		OnDragDrop
		OnDragOver
		OnEndDock
		OnEndDrag
		OnMouseDown
		OnMouseMove
		OnMouseUp
		OnResize
		OnStartDock
		OnStartDrag
		Parent
		ParentBiDiMode
		ParentColor
		ParentFont
		ParentShowHint
		PopupMenu
		ScalingFlags
		ShowHint
		TBDockHeight
		Text
		Top
		UndockHeight
		UndockWidth
		Visible
		Width
		WindowProc
		WindowText

Derived from TComponent

		ComObject
		ComponentCount
		ComponentIndex
		Components
		ComponentState
		ComponentStyle
		DesignInfo
		Name
		Owner
		Tag
		VCLComObject


TAGWAPI.Active
TAGWAPI

property Active: Boolean;

Unit
AGWAPI

Description
•	This property starts the connection with the AGW Packet Engine thru the WinSocket API when set to TRUE and closes the connection when set to FALSE.


TAGWAPI.Address
TAGWAPI

AGW Packet Engine IP Address.

property Address: String;

Unit
AGWAPI

Description
•	Set the IP address of the machine where the AGW Packet Engine is running, use the dotted format (nnn.nnn.nnn.nnn); hostname resolution is not supported.

•	If running on the same machine you could use 127.0.0.1 (loopback port).


TAGWAPI.AGWAPIVersion
TAGWAPI

Version of the AGW API VCL component (Read Only)

property AGWAPIVersion: String;

Unit
AGWAPI

Description
Contains the version and build level of the component.


TAGWAPI.AGWVersion
TAGWAPI

AGW Packet Engine Version

property AGWVersion: String;

Unit
AGWAPI

Description
Returns the AGW Packet Engine version as reported by the WinSockets API.

This property is valid only after the AGW Packet had been successfully connected (OnReady event received).


TAGWAPI.AX
TAGWAPI.AX25
TAGWAPI

AX.25 Link Manager

property AX25: Boolean;

Unit
AGWAPI

Description
This property controls whether the AX.25 Link Manager is activated (TRUE) or not (FALSE).


TAGWAPI.Beacon
TAGWAPI

Beacon

property Beacon: Boolean;

Unit
AGWAPI

Description
This property controls whether the Beacon object is active (TRUE) or not (FALSE).


TAGWAPI.BeaconAuto
TAGWAPI

Beacon Automatic Delivery

property BeaconAuto: Boolean;

Unit
AGWAPI

Description
This property will control whether or not the Beacon is sent automatically or not.

The mechanisms is as follows:

•	The beacon is activated thru the Beacon property set to TRUE.

•	Other beacon parameters has to be established thru the respective properties.

•	When the beacon is fired (every BeaconEvery millisecs) the OnBeacon event is generated.

•	If BeaconAuto=TRUE the beacon is sent despite the processing performed at the Event Handler.

•	If BeaconAuto=FALSE the beacon is not sent automatically, the OnBeacon event handler has to explicitly call the BeaconPost method to transmit the beacon.


TAGWAPI.BeaconCall
TAGWAPI

Beacon Call

property BeaconCall: String;

Unit
AGWAPI

Description
•	Defines the beacon FROM callsign+SSID.


TAGWAPI.BeaconEvery
TAGWAPI

Beacon latency

property BeaconEvery: Integer;

Unit
AGWAPI

Description
•	Defines how often the beacon is fired (default 10 mins=600000 millisecs).


TAGWAPI.BeaconId
TAGWAPI

Beacon ID

property BeaconId: String;

Unit
AGWAPI

Description
•	Callsign and SSID of the destination of the beacon (default "ID").


TAGWAPI.BeaconPid
TAGWAPI

Beacon PID

property BeaconPid: Integer;

Unit
AGWAPI

Description
Defines the PID of the frame used to send the beacon, by default the PID is 0xF0 (standard AX.25 Information Frame), could be changed to something else if needed.


TAGWAPI.BeaconText
TAGWAPI

Beacon Text

property BeaconText: String;

Unit
AGWAPI

Description
This is the text information sent with the beacon.


TAGWAPI.CallSign
TAGWAPI

Callsign of the component

property CallSign: String;

Unit
AGWAPI

Description
The component manages by default a single callsign and SSID on all interactions with AGWPE,

this is the callsign forced to be registered when the Register property is set to TRUE.

Additional callsigns could be registered and unregistered using the AGWRegister/AGWUnRegister methods.


TAGWAPI.Debug
TAGWAPI

Debug Information

property Debug: Boolean;

Unit
AGWAPI

Description
This property controls whether debug information is generated or not; when set to TRUE debug information is produced and stored on the file defined by the Log property (if <> from blanks) and OnDebug events are generated. The Trace property controls de definition and level of detail of the information generated.

This information is set internally on the VCL component and should be used with initial debugging purposes, no release software should have permanently set this property as TRUE.


TAGWAPI.Digi
TAGWAPI

Digipeater

property Digi: Boolean;

Unit
AGWAPI

Description
This property controls whether or not the Digipeater object contained in the component is activated, with TRUE it gets activated and with FALSE it gets desactivated.

This property has to be set prior to Activate the component itself (prior to set Active = TRUE).


TAGWAPI.DigiAuto
TAGWAPI

Digipeater Automatic Mode

property DigiAuto: Boolean;

Unit
AGWAPI

Description
This property controls whether or not frames are digipeated automatically despite the processing performed at the OnDigi event handler (TRUE) or the digipeat process has to explicitly be done at the OnDigi event handler thru a call to the PostDigi method.


TAGWAPI.DigiCall
TAGWAPI

Digipeater Call

property DigiCall: String;

Unit
AGWAPI

Description
This is the callsign and SSID of the digipeater module, frames using this callsign and SSID on the VIA path will be digipeated and other ignored.


TAGWAPI.Kiss
TAGWAPI

Raw Information

property Kiss: Boolean;

Unit
AGWAPI

Description
This property controls whether Raw information is provided to the application thru OnRaw and OnRawDecode events or not.

Set it to TRUE if you wish to receive Raw information and FALSE if not.


TAGWAPI.Log
TAGWAPI

Debug Log File Name

property Log: String;

Unit
AGWAPI

Description
Defines the name of the file where debug information will be written if the Debug property is set to TRUE.

The file is created every time the Debug property transitions from FALSE->TRUE.


TAGWAPI.LoopBack
TAGWAPI

LoopBack port indicator (Read Only)

property LoopBack: Boolean;

Unit
AGWAPI

Description
This property informs whether AGW Packet Engine has a loopback port defined or not.

The information of this property is valid only after the AGW Packet Engine had been connected at least once (Active = TRUE) and after the OnReady event has been sent.


TAGWAPI.LoopBackPort
TAGWAPI

LoopBack Port Number (Read Only)

property LoopBackPort: Integer;

Unit
AGWAPI

Description
This property reflects the number of the LoopBack port (if defined), in case of more than one LoopBack port been defined the one with the higher number is returned.

This property is valid only after the AGW Packet Engine has been connected and the OnReady event has been fired.


TAGWAPI.Monitor
TAGWAPI

Monitor Information

property Monitor: Boolean;

Unit
AGWAPI

Description
This property controls whether or not the application will receive Monitor Information thru OnMonitor and OnMonitorData events.

The type of monitor frames will be controlled by the MonitorMask property.

This property has to be set prior to activate the connection with AGWPE thru the setting of the Active property to TRUE.


TAGWAPI.MonitorMask
TAGWAPI

Monitor Frames Mask

property MonitorMask: String;

Unit
AGWAPI

Description
This mask controls which kind of monitoring frames are made available to the application thru the OnMonitor and OnMonitorData events.

Valid values are

•	I Information Frames

•	U Unproto Frames.

•	S Supervisory Frames

•	C Connection Frames

Example:

To receive only Information and supervisory frames set

            MonitorMask := 'IU';


TAGWAPI.Poll
TAGWAPI

Port Polling

property Poll: Boolean;

Unit
AGWAPI

Description
This property controls whether the component will poll the AGW Packet Engine to provide updated port information periodically.

If set to FALSE port information is polled only once inmediately after the successful connection of the component with the AGW Packet Engine (Property Active=TRUE).

All queries to port information will reflect the data retrieved during that poll.

If set to TRUE port information is polled about once every two minutes so updated information about the conditions of all ports could be used by the application program.

Use the OnPort event to know when information about a given port has just been updated.


TAGWAPI.Port
TAGWAPI

AGW Packet Engine TCP Port

property Port: Integer;

Unit
AGWAPI

Description
This is the TCP port where the AGW Packet Engine listen for connections, it's 8000 and there is no docummented way to change it.


TAGWAPI.PortMax
TAGWAPI

Maximum Number of Ports (Read Only)

property PortMax: Integer;

Unit
AGWAPI

Description
This is the maximum number of radioports defined on the AGW Packet Engine (including LoopBack ports).

This property could be used after the first successful connection with the Packet Engine has been made (OnReady event received).


TAGWAPI.Register
TAGWAPI

Register of Component CallSign and SSID

property Register: Boolean;

Unit
AGWAPI

Description
This property will force the registering (TRUE) and unregistering (FALSE) of the main callsign and SSID used by the component (Property CallSign).

Other callsigns and SSID could be registered/unregistered using the AGWRegister and AGWUnRegister method.

Remember that no connected activity could be held with a particular callsign and SSID until it's propertly registered with the AGW Packet Engine, this is done to prevent the possibility of more than one application program to try to use the same identification.


TAGWAPI.Retry
TAGWAPI

Retries to Connect

property Retry: Byte;

Unit
AGWAPI

Description
This property controls how many times the component will retry a TCP/IP connection with the AGW Packet Engine when the Property Active is set to TRUE.


TAGWAPI.Trace
TAGWAPI

Level of Debug

property Trace: Integer;

Unit
AGWAPI

Description
This property controls the level of detail of the debug process

•	1 Lower level of debug.

•	3 Medium level of debug.

•	4 High level of debug.

•	5 Very high level of debug


TAGWAPI.methods
TAGWAPI methods
TAGWAPI     Legend

Unit
AGWAPI

In TAGWAPI

		AGWRegister
		AGWUnRegister
		AGWWrite
		AX25Connect
		AX25Disconnect
		AX25Info
		AX25Send
		BeaconPost
		Connect
		Create
		Destroy
		DigiPost
		Disconnect
		FCallSign
		GetHeardInfo
		GetPortInfo
		SendData
		SendRaw
		SendUnproto
		XCallSign

Derived from TWinControl

		ActionChange
		AddBiDiModeExStyle
		AdjustClientRect
		AdjustSize
		AlignControl
		AlignControls
		AssignTo
		Broadcast
		CalcConstraints
		CanAutoSize
		CanFocus
		CanResize
		ChangeScale
		CMBiDiModeChanged
		CMBorderChanged
		CMChanged
		CMChildKey
		CMColorChanged
		CMControlListChange
		CMCtl3DChanged
		CMCursorChanged
		CMDesignHitTest
		CMDialogChar
		CMDialogKey
		CMDockClient
		CMDrag
		CMEnabledChanged
		CMEnter
		CMExit
		CMFloat
		CMFocusChanged
		CMFontChange
		CMFontChanged
		CMInvalidate
		CMMouseWheel
		CMParentCtl3DChanged
		CMRecreateWnd
		CMShowHintChanged
		CMShowingChanged
		CMSysColorChange
		CMSysFontChanged
		CMTimeChange
		CMUnDockClient
		CMVisibleChanged
		CMWinIniChange
		CNChar
		CNKeyDown
		CNKeyUp
		CNSysChar
		CNSysKeyDown
		ConstrainedResize
		ContainsControl
		ControlAtPos
		CreateDockManager
		CreateHandle
		CreateParams
		CreateParented
		CreateParentedControl
		CreateSubClass
		CreateWindowHandle
		CreateWnd
		DefaultHandler
		DestroyHandle
		DestroyWindowHandle
		DestroyWnd
		DisableAlign
		DoAddDockClient
		DockDrop
		DockOver
		DoDockOver
		DoEnter
		DoExit
		DoFlipChildren
		DoKeyDown
		DoKeyPress
		DoKeyUp
		DoMouseWheel
		DoMouseWheelDown
		DoMouseWheelUp
		DoRemoveDockClient
		DoUnDock
		EnableAlign
		FindChildControl
		FindNextControl
		FixupTabList
		FlipChildren
		Focused
		GetActionLinkClass
		GetChildren
		GetClientOrigin
		GetClientRect
		GetControl
		GetControlCount
		GetControlExtents
		GetDeviceContext
		GetDockClientCount
		GetDockClients
		GetHandle
		GetParentHandle
		GetSiteInfo
		GetTabOrder
		GetTabOrderList
		GetTopParentHandle
		GetVisibleDockClientCount
		HandleAllocated
		HandleNeeded
		Insert
		InsertControl
		Invalidate
		InvalidateFrame
		IsControlMouseMsg
		IsCtl3DStored
		IsHelpContextStored
		IsMenuKey
		KeyDown
		KeyPress
		KeyUp
		MainWndProc
		MouseWheelHandler
		NotifyControls
		PaintControls
		PaintHandler
		PaintTo
		PaintWindow
		PaletteChanged
		PrecedingWindow
		ReadState
		Realign
		RecreateWnd
		ReloadDockedControl
		Remove
		RemoveControl
		RemoveFocus
		Repaint
		ResetIme
		ResetImeComposition
		ScaleBy
		ScaleControls
		ScrollBy
		SelectFirst
		SelectNext
		SetBevelCut
		SetBevelEdges
		SetBevelKind
		SetBevelWidth
		SetBorderWidth
		SetBounds
		SetChildOrder
		SetCtl3D
		SetDockSite
		SetFocus
		SetIme
		SetImeCompositionWindow
		SetParentCtl3D
		SetParentWindow
		SetTabOrder
		SetTabStop
		SetUseDockManager
		SetZOrder
		SetZOrderPosition
		ShowControl
		Update
		UpdateBounds
		UpdateControlState
		UpdateShowing
		UpdateTabOrder
		WMChar
		WMCharToItem
		WMCommand
		WMCompareItem
		WMContextMenu
		WMDeleteItem
		WMDestroy
		WMDrawItem
		WMEraseBkgnd
		WMFontChange
		WMHScroll
		WMIMEEndComp
		WMIMEStartComp
		WMKeyDown
		WMKeyUp
		WMKillFocus
		WMMeasureItem
		WMMouseWheel
		WMMove
		WMNCCalcSize
		WMNCDestroy
		WMNCHitTest
		WMNCPaint
		WMNotify
		WMPaint
		WMPaletteChanged
		WMParentNotify
		WMQueryNewPalette
		WMSetCursor
		WMSetFocus
		WMSize
		WMSysColorChange
		WMSysCommand
		WMSysKeyDown
		WMSysKeyUp
		WMTimeChange
		WMVKeyToItem
		WMVScroll
		WMWindowPosChanged
		WMWindowPosChanging
		WMWinIniChange
		WndProc

Derived from TControl

		BeginAutoDrag
		BeginDrag
		BringToFront
		CalcDockSizes
		Changed
		CheckNewSize
		Click
		ClientToScreen
		CMHintShow
		CMHitTest
		CMMouseEnter
		CMMouseLeave
		CMParentBiDiModeChanged
		CMParentColorChanged
		CMParentFontChanged
		CMParentShowHintChanged
		CreateFloatingDockSite
		DblClick
		DefaultDockImage
		DefineProperties
		DoActionChange
		DoCanAutoSize
		DoCanResize
		Dock
		DockTrackNoTarget
		DoConstrainedResize
		DoConstraintsChange
		DoContextPopup
		DoDock
		DoDragMsg
		DoEndDock
		DoEndDrag
		DoMouseDown
		DoMouseUp
		DoStartDock
		DoStartDrag
		DragCanceled
		DragDrop
		Dragging
		DragOver
		DrawDragDockImage
		DrawTextBiDiModeFlags
		DrawTextBiDiModeFlagsReadingOnly
		EndDrag
		EraseDragDockImage
		FontChanged
		GetAction
		GetBoundsRect
		GetClientHeight
		GetClientWidth
		GetControlsAlignment
		GetDockEdge
		GetDragImages
		GetEnabled
		GetFloating
		GetFloatingDockSiteClass
		GetLRDockWidth
		GetMouseCapture
		GetPalette
		GetParentComponent
		GetPopupMenu
		GetTBDockHeight
		GetText
		GetTextBuf
		GetTextLen
		GetUndockHeight
		GetUndockWidth
		HasParent
		Hide
		InitiateAction
		InvalidateControl
		IsAnchorsStored
		IsBiDiModeStored
		IsCaptionStored
		IsColorStored
		IsEnabledStored
		IsFontStored
		IsHintStored
		IsOnClickStored
		IsRightToLeft
		IsShowHintStored
		IsVisibleStored
		Loaded
		ManualDock
		ManualFloat
		MouseDown
		MouseMove
		MouseUp
		Notification
		Perform
		PositionDockRect
		ReadIsControl
		Refresh
		ReplaceDockedControl
		RequestAlign
		Resize
		ScreenToClient
		SendCancelMode
		SendDockNotification
		SendToBack
		SetAction
		SetAlign
		SetAnchors
		SetAutoSize
		SetBiDiMode
		SetBoundsRect
		SetClientHeight
		SetClientSize
		SetClientWidth
		SetColor
		SetCursor
		SetDesktopFont
		SetDragMode
		SetEnabled
		SetFont
		SetHeight
		SetHostDockSite
		SetLeft
		SetMouseCapture
		SetName
		SetParent
		SetParentBiDiMode
		SetParentColor
		SetParentComponent
		SetParentFont
		SetParentShowHint
		SetPopupMenu
		SetShowHint
		SetText
		SetTextBuf
		SetTop
		SetVisible
		SetWidth
		Show
		UpdateAnchorRules
		UpdateBoundsRect
		UseRightToLeftAlignment
		UseRightToLeftReading
		UseRightToLeftScrollBar
		VisibleChanging
		WMCancelMode
		WMLButtonDblClk
		WMLButtonDown
		WMLButtonUp
		WMMButtonDblClk
		WMMButtonDown
		WMMButtonUp
		WMMouseMove
		WMNCLButtonDown
		WMRButtonDblClk
		WMRButtonDown
		WMRButtonUp
		WriteIsControl

Derived from TComponent

		_AddRef
		_Release
		BeforeDestruction
		ChangeName
		DestroyComponents
		Destroying
		ExecuteAction
		FindComponent
		FreeNotification
		FreeOnRelease
		GetChildOwner
		GetChildParent
		GetComObject
		GetComponent
		GetComponentCount
		GetComponentIndex
		GetIDsOfNames
		GetNamePath
		GetOwner
		GetTypeInfo
		GetTypeInfoCount
		InsertComponent
		Invoke
		QueryInterface
		ReadLeft
		ReadTop
		RemoveComponent
		RemoveFreeNotification
		RemoveNotification
		SafeCallException
		SetAncestor
		SetComponentIndex
		SetDesigning
		SetDesignInstance
		SetInline
		SetReference
		UpdateAction
		Updated
		UpdateRegistry
		Updating
		ValidateContainer
		ValidateInsert
		ValidateRename
		WriteLeft
		WriteState
		WriteTop

Derived from TPersistent

		Assign
		AssignError

Derived from TObject

		AfterConstruction
		ClassInfo
		ClassName
		ClassNameIs
		ClassParent
		ClassType
		CleanupInstance
		Dispatch
		FieldAddress
		Free
		FreeInstance
		GetInterface
		GetInterfaceEntry
		GetInterfaceTable
		InheritsFrom
		InitInstance
		InstanceSize
		MethodAddress
		MethodName
		NewInstance


TAGWAPI.AGWRegister
TAGWAPI

Register a CallSign with AGW Packet Engine (Low Level)

procedure AGWRegister(szCall: String);

Unit
AGWAPI

Description
This method tries to register a given callsign and SSID with the AGW Packet Engine.

The method returns inmediately, results of the registration should be done thru the implemenation of a OnRegister event handler.


TAGWAPI.AGWUnRegister
TAGWAPI

Unregister a CallSign

procedure AGWUnRegister(szCall: String);

Unit
AGWAPI

Description
This method does the opposite of AGWRegister, it unregister a callsign previously registered with AGW Packet Engine.

If a non previously registered callsign is sent it will be ignored.

No event is generated on successful unregistration of a callsign and SSID.

The application ceases to receive frames directed to the callsign and SSID inmediately after the processing of this frame.


TAGWAPI.AGWWrite
TAGWAPI

Send an API frame to the AGW Packet Engine (Low Level)

procedure AGWWrite(iPort, bPid: Integer; szDataKind, szFrom, szTo, szData: String);

Unit
AGWAPI

Description
This method could be used to send any low level API frame to the AGW Packet Engine.


TAGWAPI.AXConnect
TAGWAPI.AX25Connect
TAGWAPI

Create a Connection Channel (AX.25 Link Manager)

function AX25Connect(iPort: Integer; szFrom, szTo, szVia: String): Integer;

Unit
AGWAPI

Description
This function is used to start a connected session, a channel ID is returned inmediately independently of the actual result of the connection.

The Channel ID is the handle to be used on other interactions with that particular session.

Actual result of the connection will come either thru a OnAX25Connect or OnAX25Disconnect depending of the result of the attempt.


TAGWAPI.AXDisconnect
TAGWAPI.AX25Disconnect
TAGWAPI

Terminates a Connected Session (AX.25 Link Manager)

function AX25Disconnect(iChannelId: Integer): Boolean;

Unit
AGWAPI

Description
This method will force the connected session referenced by Channel ID to be terminated.

The function returns inmediately with TRUE or FALSE depending on whether the connection previously exists or not.

If the attempt is made over a valid connection the result will be received thru an OnAX25Disconnect event.


TAGWAPI.AXInfo
TAGWAPI.AX25Info
TAGWAPI

Connected Session Information (AX.25 Link Manager)

function AX25Info(iChannelId: Integer; Var iPort: Integer; Var szFrom, szTo, szVia: String; Var iLinkStatus, iRx, iTx: Integer): Boolean;

Unit
AGWAPI

Description
This function is used to retrieve information about a particular Channel ID (connected session).

The result of the function marks with TRUE the indicated Channel ID was valid or with FALSE if not.


TAGWAPI.AXSend
TAGWAPI.AX25Send
TAGWAPI

Send Connected Information (AX.25 Link Manager)

function AX25Send(iChannelId: Integer; szData: String): Boolean;

Unit
AGWAPI

Description
This function is used to send information to a valid Channel ID already connected.

The result of the function doesn't mark the actual delivery (that will depend on the bandwidth of the port) but on the indication of a valid or invalid Channel ID in connected state.


TAGWAPI.BeaconPost
TAGWAPI

Post Beacon Frame (Beacon)

procedure BeaconPost(dwPort: Integer; szFrom, szTo, szVia, szMessage: String);

Unit
AGWAPI

Description
This method posts an UNPROTO frame as a beacon. It could be used to deliver any UNPROTO frame actually.

It's been called internally by the Beacon when the Property BeaconAuto is set to TRUE.

The combination of the OnBeacon event and the BeaconPost method could be used to alter

the actual content of the beacon prior to delivery.


TAGWAPI.Connect
TAGWAPI

Start a Connection

function Connect(iPort: Integer; szFrom, szTo, szVia: String; bPid: Integer): Boolean;

Unit
AGWAPI

Description
This method starts a connection with the indicated station. This generates AGW Packet Engine to receive a connection frame. The actual management of the connection has to be done by the application thru the implementation of the OnConnect,OnDisconnect and OnData events.

Even if the AX.25 Link Manager is enabled a connection started thru this call will not be managed by it so the application has to manage to which particular connection the related events belongs.

The component takes care of the proper frame to be communicated to AGW Packet Engine based on the existence or not of VIA information and the PID informed for it.


TAGWAPI.Create
TAGWAPI

Constructor

constructor Create(Sender: TComponent); override;

Unit
AGWAPI

Description
This is the constructor of the object.


TAGWAPI.Destroy
TAGWAPI

Destructor

destructor Destroy; override;

Unit
AGWAPI

Description
This is the destructor of the object.


TAGWAPI.DigiPost
TAGWAPI

Post a Digipeated Frame (Digipeater)

procedure DigiPost(dwPort: Integer; szFrom, szTo, szData: String);

Unit
AGWAPI

Description
This method actually digipeats a frame (sends it), this method should be used together with the OnDigi event as a part of the event handler in order to eventually alter the data area or to manage the port where the frame will be sent or to selectively drop frames.

The szData contains the raw format representation of the packet to be sent, the "been digied" bit should be set to on before posting in order to prevent "on the air" loops.


TAGWAPI.Disconnect
TAGWAPI

Disconnect

function Disconnect(iPort: Integer; szFrom, szTo: String): Boolean;

Unit
AGWAPI

Description
This function makes AGW Packet Engine to start to disconnect a given AX.25 connection, the actual result of the disconnection will come either thru a OnDisconnect or OnRetryOut events.

Please note that this method should be used when you manage the connections and disconnections without using the AX.25 Link Manager.

If you are managing your connections thru the AX.25 Link Manager use the AX25Disconnect method instead.


TAGWAPI.FCallSign
TAGWAPI

Converts a Callsign-SSID from Shift AX.25 format into ASCII (Low Level)

function FCallSign(szCall: String): String;

Unit
AGWAPI

Description
This is a service function that doesn't generate any interaction with the AGW Packet Engine used to convert from a Shifted AX.25 ASCII representation into pure ASCII a CallSign and SSID.

This function could be used even if the status of the component is Active = FALSE.


TAGWAPI.GetHeardInfo
TAGWAPI

Retrieve Heard Stations on a Port

function GetHeardInfo(iPort, iPos: Integer): String;

Unit
AGWAPI

Description
This function allows the application program to retrieve information about heard stations on a given radio port.

The application has to call with a valid port number (between 1..PortMax) and a position on the heard list (1..20); if there is less than 20 stations heard on a given port the string returned is empty.

The information is only refreshed periodically if the Property Poll is set to TRUE, otherwise it reflects the status at the moment of the activation of the component (Property Active = TRUE).

This method should be called after the OnReady event has been received.


TAGWAPI.GetPortInfo
TAGWAPI

Retrieve Port Information

function GetPortInfo(iPort: Integer; Var szPortName: String; Var iOnAirBaud, iTrafficLevel, iTxDelay, iTxTail, iPersist, iSlotTime, iMaxFrame, iAX25Channel, iHowManyBytes, iFrames: Integer): Boolean;

Unit
AGWAPI

Description
This function allows the application program to retrieve information about parameters on a given radio port.

The application has to call with a valid port number (between 1..PortMax)

The information is only refreshed periodically if the Property Poll is set to TRUE, otherwise it reflects the status at the moment of the activation of the component (Property Active = TRUE).

This method should be called after the OnReady event has been received.


TAGWAPI.SendData
TAGWAPI

Send Connected Data

function SendData(iPort, bPid: Integer; szFrom, szTo, szData: String): Boolean;

Unit
AGWAPI

Description
This function is used to send connected information. It has to be used when the application program is managing the connection thru the Connect/Disconnect methods and OnConnect/OnDisconnect/OnData events.

If you are trying to manage connections thru the AX.25 Link Manager use AX25Send instead.


TAGWAPI.SendRaw
TAGWAPI

Send Raw Information

function SendRaw(iPort: Integer; szData: String): Boolean;

Unit
AGWAPI

Description
This method is used to send a Raw format packet, you have to build the content of the packet as the image of an AX.25 frame on the Data Area.

Please refer to the AGW Packet Engine documentation for further information on the format.


TAGWAPI.SendUnproto
TAGWAPI

Send UNPROTO Frame

function SendUnproto(iPort, bPid: Integer; szFrom, szTo, szVia, szData: String): Boolean;

Unit
AGWAPI

Description
This method will send an UNPROTO (UI) frame at any time.


TAGWAPI.XCallSign
TAGWAPI

Convert CallSign and SSID from ASCII to Shift AX.25 Format (Low Level)

function XCallSign(szCall: String): String;

Unit
AGWAPI

Description
This is the complement of the FCallSign Method and could be used on the same conditions to

obtain the Shifted AX.25 ASCII version of a given CallSign and SSID (expressed as a string 'CALLSIGN-SSID').


TAGWAPI.events
TAGWAPI events
TAGWAPI     Legend

Unit
AGWAPI

In TAGWAPI

		OnAX25Connect
		OnAX25Disconnect
		OnAX25Receive
		OnBeacon
		OnConnect
		OnData
		OnDebug
		OnDigi
		OnDisconnect
		OnError
		OnMonitor
		OnMonitorData
		OnPort
		OnRaw
		OnRawDecode
		OnRead
		OnReady
		OnRegister
		OnRetryOut
		OnUnproto

Derived from TWinControl

		BevelEdges
		BevelInner
		BevelKind
		BevelOuter
		BevelWidth
		BorderWidth
		Brush
		ControlCount
		Controls
		Ctl3D
		DefWndProc
		DockClientCount
		DockClients
		DockManager
		DockSite
		DoubleBuffered
		Handle
		HelpContext
		ImeMode
		ImeName
		OnDockDrop
		OnDockOver
		OnEnter
		OnExit
		OnGetSiteInfo
		OnKeyDown
		OnKeyPress
		OnKeyUp
		OnMouseWheel
		OnMouseWheelDown
		OnMouseWheelUp
		OnUnDock
		ParentCtl3D
		ParentWindow
		Showing
		TabOrder
		TabStop
		UseDockManager
		VisibleDockClientCount
		WheelAccumulator
		WindowHandle

Derived from TControl

		Action
		ActionLink
		Align
		Anchors
		AutoSize
		BiDiMode
		BoundsRect
		Caption
		ClientHeight
		ClientOrigin
		ClientRect
		ClientWidth
		Color
		Constraints
		ControlState
		ControlStyle
		Cursor
		DesktopFont
		DockOrientation
		DragCursor
		DragKind
		DragMode
		Enabled
		Floating
		FloatingDockSiteClass
		Font
		Height
		Hint
		HostDockSite
		IsControl
		Left
		LRDockWidth
		MouseCapture
		OnCanResize
		OnClick
		OnConstrainedResize
		OnContextPopup
		OnDblClick
		OnDragDrop
		OnDragOver
		OnEndDock
		OnEndDrag
		OnMouseDown
		OnMouseMove
		OnMouseUp
		OnResize
		OnStartDock
		OnStartDrag
		Parent
		ParentBiDiMode
		ParentColor
		ParentFont
		ParentShowHint
		PopupMenu
		ScalingFlags
		ShowHint
		TBDockHeight
		Text
		Top
		UndockHeight
		UndockWidth
		Visible
		Width
		WindowProc
		WindowText

Derived from TComponent

		ComObject
		ComponentCount
		ComponentIndex
		Components
		ComponentState
		ComponentStyle
		DesignInfo
		Name
		Owner
		Tag
		VCLComObject


TAGWAPI.OnAXConnect
TAGWAPI.OnAX25Connect
TAGWAPI

Connection Started (AX.25 Link Manager)

property OnAX25Connect: TOnAX25Connect;

Unit
AGWAPI

Description
This event is generated when a successful connection has been established using the AX.25 Link Manager (AX25Connect Method). The application is provided with the Channel ID of that particular session. If the session had been started by us thru an AX25Connect call the ChannelID will be the same than provided then. If this is an unsolicited connection (initiated by other into us) the AX.25 Link Manager will create a new Channel ID and provide it.

Additional information about the connection could be retrieved using the AX25Info Function.

This event is generated only if the AX.25 Link Manager is activated thru the Property AX25=TRUE.


TAGWAPI.OnAXDisconnect
TAGWAPI.OnAX25Disconnect
TAGWAPI

Connection Terminated (AX.25 Link Manager)

property OnAX25Disconnect: TOnAX25Disconnect;

Unit
AGWAPI

Description
This event signals the termination of a Session given by the Channel ID. The information referred to that particular connection will be destroyed by the AX.25 Link Manager when the handler of the event returns so it's the last opportunity for the application program to perform housekeeping related to the connection.

This event is generated only if the AX.25 Link Manager is activated thru the Property AX25=TRUE.


TAGWAPI.OnAXReceive
TAGWAPI.OnAX25Receive
TAGWAPI

Receive Connected Information (AX.25 Link Manager)

property OnAX25Receive: TOnAX25Receive;

Unit
AGWAPI

Description
This event is generated every time there is incoming data from a connected session managed thru the AX.25 Link Manager.

This event is generated only if the AX.25 Link Manager is activated thru the Property AX25=TRUE.


TAGWAPI.OnBeacon
TAGWAPI

Beacon Event (Beacon)

property OnBeacon: TOnBeacon;

Unit
AGWAPI

Description
This event is generated by the Beacon component when the timer set thru the BeaconEvery property expires.

The Beacon generates one event per defined port (including loopbacks).

If the Property BeaconAuto is set to TRUE the application should not implement an event handler for this event, if set to FALSE the event handler should call the BeaconPost method for the frame to actually be aired.


TAGWAPI.OnConnect
TAGWAPI

AX.25 Connection Received

property OnConnect: TOnConnect;

Unit
AGWAPI

Description
This event is generated every time the AGW Packet Engine receives a connection to a registered callsign and SSID.

The application could choose to manage the connection by itself (and thus implement an event handler for this message) or to manage it thru the AX25 Link Manager (and thus implementing the event handler for the event OnAX25Connect).

Beware that the application will receive BOTH events if the AX.25 Link Manager is enabled.


TAGWAPI.OnData
TAGWAPI

Connected Data Received

property OnData: TOnData;

Unit
AGWAPI

Description
This event is generated every time the AGW Packet Engine receives a data frame to a registered callsign and SSID.

The application could choose to manage the connection by itself (and thus implement an event handler for this message) or to manage it thru the AX25 Link Manager (and thus implementing the event handler for the event OnAX25Receive).

Beware that the application will receive BOTH events if the AX.25 Link Manager is enabled.


TAGWAPI.OnDebug
TAGWAPI

Debug Events

property OnDebug: TOnDebug;

Unit
AGWAPI

Description
This event is generated for every debug message if the Property Debug is set to TRUE.

The detail of the debug is controlled by the Property Trace.

The debug information is also written on a file set by the Property Log.


TAGWAPI.OnDigi
TAGWAPI

Digipeater Frame (Digipeater)

property OnDigi: TOnDigi;

Unit
AGWAPI

Description
This event is generated when the digipeater function is enabled (Property Digi=TRUE) and the component detects a frame containing the digipeater callsign and SSID (Property DigiCall) as the next on the frame VIA path with the "been digied" bit set to 0.

The event provides the frame ready to be sent ("been digied" set to 1).

The application could choose to digipeat it automatically without implementing an event handler just setting the Property DigiAuto=TRUE, the frame will be then automatically retransmitted over the same port than heard.

If not, the application could choose to implement the event handler and decide whether or not and how the frame will be digipeated thru the DigiPost method.


TAGWAPI.OnDisconnect
TAGWAPI

Disconnection of a Connected Session

property OnDisconnect: TOnDisconnect;

Unit
AGWAPI

Description
This event is generated every time the AGW Packet Engine receives a disconnection to a registered callsign and SSID.

The application could choose to manage the disconnection by itself (and thus implement an event handler for this message) or to manage it thru the AX25 Link Manager (and thus implementing the event handler for the event OnAX25Disconnect).

Beware that the application will receive BOTH events if the AX.25 Link Manager is enabled.


TAGWAPI.OnError
TAGWAPI

AGW Packet Engine Connection Error

property OnError: TOnAGWError;

Unit
AGWAPI

Description
This event is generated when the component had been directed to start an WinSocket API communication with the AGW Packet Engine (Property Active=TRUE) and the communication failed.


TAGWAPI.OnMonitor
TAGWAPI

Monitor Data

property OnMonitor: TOnMonitor;

Unit
AGWAPI

Description
This event is generated for monitored information on all ports managed by the AGW Packet Engine.

The production of this event is controlled by the Property Monitor set to TRUE and the actual monitoring frames by the value of the Property MonitorMask.

This event contains the monitored information as received from the AGW Packet Engine,

if you prefer to handle the parsed version of the information use the OnMonitorData event, both

events are generated for every monitoring frame sent by AGW Packet Engine (so try not to use BOTH).


TAGWAPI.OnMonitorData
TAGWAPI

Decoded Monitoring Data

property OnMonitorData: TOnMonitorData;

Unit
AGWAPI

Description
This event is generated for monitored information on all ports managed by the AGW Packet Engine.

The production of this event is controlled by the Property Monitor set to TRUE and the actual monitoring frames by the value of the Property MonitorMask.

This event contains the parsed monitored information as received from the AGW Packet Engine,

if you prefer to handle the unparsed version of the information use the OnMonitor event, both

events are generated for every monitoring frame sent by AGW Packet Engine (so try not to use BOTH).


TAGWAPI.OnPort
TAGWAPI

Port Information Update

property OnPort: TOnPort;

Unit
AGWAPI

Description
This event is generated for every port managed by the AGW Packet Engine every time updated information has been collected from that port, that includes Port Parameters, Heard List and Outstanding frames status.


TAGWAPI.OnRaw
TAGWAPI

Raw Information (Low Level)

property OnRaw: TOnRaw;

Unit
AGWAPI

Description
This event is generated for  information on all ports managed by the AGW Packet Engine and delivered to the application in raw (KISS) format.

The production of this event is controlled by the Property Kiss set to TRUE.

This event contains the raw information as received from the AGW Packet Engine,

if you prefer to handle the parsed version of the information use the OnRawDecode event, both

events are generated for every raw frame sent by AGW Packet Engine (so try not to use BOTH).


TAGWAPI.OnRawDecode
TAGWAPI

property OnRawDecode: TOnRawDecode;

Unit
AGWAPI

Description
This event is generated for  information on all ports managed by the AGW Packet Engine and delivered to the application in raw (KISS) format.

The production of this event is controlled by the Property Kiss set to TRUE.

This event contains the parsed raw information as received from the AGW Packet Engine, where the main fields of the AX.25 frame are decoded.

if you prefer to handle the direct version of the information use the OnRaw event, both

events are generated for every raw frame sent by AGW Packet Engine (so try not to use BOTH)


TAGWAPI.OnRead
TAGWAPI

AGW Packet Engine WinSocks API Frame (Low Level)

property OnRead: TOnRead;

Unit
AGWAPI

Description
This event gives the application a way to manage the communication with the AGW Packet engine at low level without any overhead from the component.

So this event reflects complete and valid frames received from AGW Packet engine thru the API.

The main benefit of using this event (and the complement, the AGWWrite method) to communicate is to have the TCP/IP fragmentation issues already resolved and certain management tasks performed transparently by the component.

The implementation of this event handler could bear considerable performance issues if not properly implemented, so use it only when needed.

Once a handler is implemented for this event ALL frames sent from AGW Packet Engine to the application will be sent to it.


TAGWAPI.OnReady
TAGWAPI

AGW Packet Engine Connection Ready

property OnReady: TOnAGWReady;

Unit
AGWAPI

Description
This event signal the successful connection between the application and the AGW Packet Engine and the initial exchange of information.


TAGWAPI.OnRegister
TAGWAPI

Register of CallSign

property OnRegister: TOnRegister;

Unit
AGWAPI

Description
This event signals the registration of a callsign and SSID (either thru the Register Property for the default callsign SSID or thru additional calls to the AGWRegister method).

The actual success or failure of the registration is given.

Please note there is no equivalent event for the Unregistration.


TAGWAPI.OnRetryOut
TAGWAPI

RetryOut of a connection

property OnRetryOut: TOnRetryOut;

Unit
AGWAPI

Description
This is the equivalent of the OnDisconnect event but when the connection terminated because it retried out.


TAGWAPI.OnUnproto
TAGWAPI

UNPROTO frames

property OnUnproto: TOnUnProto;

Unit
AGWAPI

Description
This is the equivalent of the OnData event but for unconnected information (UI).


TOnAGWReady

type TOnAGWReady = procedure(fReady: Boolean) of object;

Unit
AGWAPI


TOnAXConnect
TOnAX25Connect

type TOnAX25Connect = procedure(iChannelId: Integer) of object;

Unit
AGWAPI


TOnAXDisconnect
TOnAX25Disconnect

type TOnAX25Disconnect = procedure(iChannelId: Integer) of object;

Unit
AGWAPI


TOnAXReceive
TOnAX25Receive

type TOnAX25Receive = procedure(iChannelId: Integer; szData: String) of object;

Unit
AGWAPI


TOnBeacon

type TOnBeacon = procedure(dwPort: Integer; szFrom, szTo, szVia, szMessage: String) of object;

Unit
AGWAPI


TOnConnect

type TOnConnect = procedure(dwPort: Integer; szFrom, szTo, szData: String) of object;

Unit
AGWAPI


TOnData

type TOnData = procedure(dwPort: Integer; szFrom, szTo: String; bPid: Integer; szData: String) of object;

Unit
AGWAPI


TOnDebug

type TOnDebug = procedure(LogStr: String) of object;

Unit
AGWAPI


TOnDigi

type TOnDigi = procedure(dwPort: Integer; szFrom, szTo, szDigiCall, szData: String) of object;

Unit
AGWAPI


TOnDisconnect

type TOnDisconnect = procedure(dwPort: Integer; szFrom, szTo, szData: String) of object;

Unit
AGWAPI


TOnMonitor

type TOnMonitor = procedure(dwPort: Integer; szFrom, szTo: String; bPid: Integer; szData: String) of object;

Unit
AGWAPI


TOnMonitorData

type TOnMonitorData = procedure(iPort: Integer; szFrom, szTo, szVia, szType, szPid: String; iNR, iNS: Integer; szInfo: String) of object;

Unit
AGWAPI


TOnPort

type TOnPort = procedure of object;

Unit
AGWAPI


TOnRaw

type TOnRaw = procedure(dwPort: Integer; szData: String) of object;

Unit
AGWAPI


TOnRawDecode

type TOnRawDecode = procedure(dwPort: Integer; szFrom, szTo, szVia, szType: String; bNR, bNS: Integer; fPF: Boolean; bPid: Integer; szInfo: String) of object;

Unit
AGWAPI


TOnRead

type TOnRead = procedure(dwPort, bPid: Integer; szDataKind, szFrom, szTo, szData: String) of object;

Unit
AGWAPI


TOnRegister

type TOnRegister = procedure(szCall: String; fFlags: Boolean) of object;

Unit
AGWAPI


TOnRetryOut

type TOnRetryOut = procedure(dwPort: Integer; szFrom, szTo, szData: String) of object;

Unit
AGWAPI


TOnUnProto

type TOnUnProto = procedure(dwPort: Integer; szFrom, szTo: String; bPid: Integer; szData: String) of object;

Unit
AGWAPI


Legend
      Published
      ReadOnly
      Abstract